Team Generator is a Node CLI that takes in information about employees and generates an HTML webpage that displays summaries for each person. The application will prompt the user for information about the team manager and then information about the team members. The user can input any number of team members, and they may be a mix of engineers and interns. This assignment must also pass all unit tests. When the user has completed building the team, the application will create an HTML file that displays a nicely formatted team roster based on the information provided by the user. Following the common templates for user stories, we can frame this challenge as follows:
Please use the links in the table below to navigate the ReadMe contents.
As a manager
I want to generate a webpage that displays my team's basic info
so that I have quick access to emails and GitHub profiles
- Below is a demo of what the application.
In the Develop folder, there is a package.json, so make sure to npm install.
The dependencies are, jest for running the provided tests, and inquirer for collecting input from the user.
There are also unit tests to help you build the classes necessary.
It is recommended that you follow this workflow:
- Run tests
- Create or update classes to pass a single test case
- Repeat
🎗 Remember, you can run the tests at any time with npm run test
It is recommended that you start with a directory structure that looks like this:
lib/ // classes and helper code
output/ // rendered output
templates/ // HTML template(s)
test/ // jest tests
Employee.test.js
Engineer.test.js
Intern.test.js
Manager.test.js
app.js // Runs the application
-
Functional application.
-
GitHub repository with a unique name and a README describing the project.
-
User can use the CLI to generate an HTML page that displays information about their team.
-
All tests must pass.
The project will prompt the user with questions to build an engineering team. An engineering team consists of a manager, and any number of engineers and interns.
The project generates a team.html page in the output directory, that displays a nicely formatted team roster. Each team member displays the following in no particular order:
-
Name
-
Role
-
ID
-
Role-specific property (School, link to GitHub profile, or office number)
Expected testing out should be written directory called Output after going throught he prompt and answering all pertinent questions.
- Node.js - Make sure Node.js is installed in your machine. If Node.js is not installed on your machine, click here to download the application.
- NPM Inquirer Package - The NPM inquirer package is needed to prompt questions in the commandline.
- This package is already listed as a dependency in the
package.jsonfile, so you will only need to run thenpm installcommand in your terminal to access this package.
- This package is already listed as a dependency in the
-
Jest - The jest is the Js testing framework that is used for unit testing in this project.
- This dependency is already included in the
package.jsonfile, so you will only need to run thenpm installcommand in your terminal to enable testing funcitionality.
- This dependency is already included in the
-
chalk-pipe - chalk-pipe is a Js styling library used for CLI interfaces.
- This dependency is included in the
packege.json. All that needs to be done is runnpm installornpm ifor short.
- This dependency is included in the
To run test a test simply run npm run test to run all suites or npm run watch to continue to watch or run a specific suite.
The following image shows all unit testing done.
- Screenshot that demonstrates all unit tests pass.


