/Developer-Profile-Generator

Developer Profile Generator Using Node JS

Primary LanguageJavaScript

Developer-Profile-Generator

Homework-8 Jamie Morris

Developer Profile Generator Using Node JS

Summary

  • Javascript documents create an HTML file, and converts it to a Printable PDF using NodeJS
  • This project emphasizes the use of using NodeJs and several npm packages to render a file pdf product
  • This project utilizes the use of Axios

This project has the following features:

  • An Index JS document
    • This provides an entry point to the generateHTML module
    • This page has an Asynchronous call Axios to GitHub using the Inquirer npm
  • A Generate HTML JS Document
    • This uses an object to prompt the user, and fill in professional data from GitHub
  • An HTML page
    • This is rendered, rather than hard coded, using nodeJS, Util, Promisify
  • A PDF page
    • This is rendered, rather than hard coded, using html-pdf, this is then opened using npm page Open

Psuedo code:

  • The user will be prompted for a favorite color, which will be used as the background color for cards.

  • The PDF will be populated with the following:

  • Profile image

  • User name

  • Links to the following:

    • User location via Google Maps
    • User GitHub profile
    • User blog
    • User bio
    • Number of public repositories
    • Number of followers
    • Number of GitHub stars
    • Number of users following

This project has script features of:

  • Variable declaration area with require entry points
  • An Axios call
  • Prompt user function for user name and favorite color
  • An Answer function with a Promise and .then chaining

This project features responsive design

Has responsive layout for:

  • PDF Print capabilities

To Execute File:

Open in browser

Features:

  • Two JS Pages
    • Index.js
    • generateHTML.js
  • Two JSON packages
  • Node Modules Folder
  • One HTML Page
  • One PDF Page

Code Validation

* These use W3C Code Validators for HTML, CSS and Javascript
    * Format: ![Validator-HTML](assets/Validator-HTML-Index)
    * Format: ![Validator-HTML](assets/Validator-CSS)
    * Format: ![Validator-CSS](assets/Validator-JS-Index)
    * Format: ![Validator-CSS](assets/Validator-JS-generateHTML)