Welcome to the Team Profile Generator, this program is command-line application built using Node.js. Built to enable users to create team profiles by answering a series of inquirer prompts. The information provided is then used to generate a structured HTML output where each employee type have their own sections. Put it into perspective and create a visual representation of your team profile NOW!
- Optimized GUI to ensure ease of use.
- Showcases existing Employee Array as each Employee Object is created.
- Capability of deleting existing employee objects before printing to HTML
- page-template separates Employee Array into role-specific arrays.
- Uses collected data to create structured HTML.
The focus of this project was to reinforce and emphasize modern approaches. This profile generator was built using the principles of OOP and TDD. An additional feature worth highlighting is that this project utilizes:
array.filter()
to collect employee role,- run a
forEach
loop on each employee type - use
map
to go through each employee object and generate relevant HTML
The repository encourages exploration and collaboration, with the codebase thoughtfully organized and easily modifiable. Feel free to delve into the code, contribute, and customize it to your needs.
Currently users are capable of updating their Employee Array
by deleting existing objects. Future objectives include:
- Creating capability to edit existing Employee Objects data
- Update the employee ID to include:
- Randomly generated number ID (Default choice)
- Manually inputted ID (Users choice)
So much for checking out this Team Profile Generator. This project was slated to be complete around 2021, this generator is a personal milestone of mine and I'm excited that this repository sits complete. Thank you always, happy coding!
AS A manager I WANT to generate a webpage that displays my team's basic info SO THAT I have quick access to their emails and GitHub profiles
GIVEN a command-line application that accepts user input
- WHEN I am prompted for my team members and their information
- THEN an HTML file is generated that displays a nicely formatted team roster based on user input
- WHEN I click on an email address in the HTML
- THEN my default email program opens and populates the TO field of the email with the address
- WHEN I click on the GitHub username
- THEN that GitHub profile opens in a new tab
- WHEN I start the application
- THEN I am prompted to enter the team manager’s name, employee ID, email address, and office number
- WHEN I enter the team manager’s name, employee ID, email address, and office number
- THEN I am presented with a menu with the option to add an engineer or an intern or to finish building my team
- WHEN I select the engineer option
- THEN I am prompted to enter the engineer’s name, ID, email, and GitHub username, and I am taken back to the menu
- WHEN I select the intern option
- THEN I am prompted to enter the intern’s name, ID, email, and school, and I am taken back to the menu
- WHEN I decide to finish building my team
- THEN I exit the application, and the HTML is generated
- HTML
- CSS
- JavaScript
- Node.js
- Inquirer
- Jest
Requires node
to play this game
Run npm i
to install dependencies
- "jest": "^29.7.0",
- "inquirer": "^8.2.6"
Invoke jest tests by running npm run test
Invoke the generator by running node index
or node index.js
- Start by filling out the base Employee File, include a name and email.
- Alongside name and email, the new employee object will contain a numerical ID and an initial role of 'Employee'. (NOTE: ID's are determined by the placement of the object within an EmployeeArray)
- Select a specific role for the employee, options are Manager, Engineer, Intern.
- Enter prompts for each specific employee.
- Users can remove any Employee object before generating HTML.
- Finishes by creating an HTML output within the /dist directory.
- jwilferd10
- GitHub: jwilferd10
- Email: [email protected]