Skip to content

A repository for my Week 10 Challenge, on Object Oriented Programming

License

dvicj/Team-Profile-Generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Team-Profile-Generator

Hello, and welcome to my README! This is for my Week 10 Challenge, which was to create a Team Profile Generator using Node.js. I learned a lot while doing this, and I am happy to be able to share my experience with you.

finished html

Link to finished index.html in my repo

Video demo of application

It was my job to ensure my Team Profile Generator had the following features:

  • a command-line application that accepts user input

  • user is prompted for:

    • manager: name, id, email address and office number
    • option to add engineers and/or interns
      • ask for name, id, email, school/github
  • all user prompts populate an index.html file

  • when user clicks on an email address, then the default email program opens up and populates the "to" field with the email selected

  • when user clicks on the GitHub username thent their GitHub profile will open in a new tab

I was to create this Team Profile Generator, and meet all of the requirements listed above, by using:

I completed this project as a way to further test my JavaScript skills with a focus on DRY and easy to read code.

I was to write test for all parts of my code to ensure maintainability. The code was to pass all tests:

all tests passed

employee

engineer

intern

manager

It is important that I am able to showcase what I can do in an interactive and meaningful way.

Features:

Installation

The user must clone all filed from this repo. It is important that the location of the files is not changed.

files

The user must have Node.js installed on their computer. Once Node is installed, the user must open the command-line (I used GitBash), get to the appropriate file location and enter "npm init".

npm init image

This will create a "package.json" file, which must be filled out like below:

package json image

Then, the user must download inquirer by entering "npm install "inquirer"". This will allow the user to enter answers to prompts on the command-line.

Then, the user simply then has to enter "node index.js" on the command line and they will be asked a series of questions. Once complete, they will be alerted that their file was created. The index.html document will be saved in the "dist" file and it is ready to use!

Usage

Here are some user experience highlights from my page:

if the user does not answer one of the required questions, they will be prompted until they answer

Credits

These are some sources I used to help me along:

Learning

Here are the highlights of what I learned and issues I had while writing this code.

I was able to get my .gitignore working properly this time around, so node_modules and the package-lock.json were not added to GitHub.

I really enjoyed how clean and simple the code ended up being. I found it much easier to understand and write than JavaScript code in the past.

I liked using Jest - but I still had a hard time writing the tests and fully understanding what I was trying to figure out. I did like how it forces you to write very simple code. I will have to keep practicing TDD.

License

MIT License

license

Copyright (c) 2021 Devin Jones

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

A repository for my Week 10 Challenge, on Object Oriented Programming

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published