Skip to content

An API to serve information to a Boss Machine, a unique management application for today’s most accomplished (evil) entrepreneurs.

Notifications You must be signed in to change notification settings

melissaveraherbst/boss-machine

Repository files navigation

A Codecademy Pro Project from the Backend Engineer Career Path

Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge


An API to serve information to a Boss Machine, a unique management application for today’s most accomplished (evil) entrepreneurs! 🦹🏼‍♀️
Manage your ‘minions’, your brilliant ‘million dollar ideas’, and handle all the annoying meetings that keep getting added to your busy schedule 📅.

🎯 Project Goal

The goal of this project is to focus on Express routes. Starter files included everything except for the contents server.js and the routes in the server folder.

🕹️ How to Use

To get started, follow these steps:

  1. Open the root project directory in your terminal.

  2. Run the following command to install the project dependencies and build the front-end application:

    npm install
  3. Once the installation is complete, start the server with the following command:

    npm run start
  4. Check your terminal for the message "Server listening on port 4001." This indicates that the server is running.

  5. The npm run start script will automatically restart the server whenever changes are made to the server.js file or the server/ folder. If you prefer to disable this feature, start your server using the following command:

    node server.js
  6. To stop the server or the npm script, use the Ctrl + C command in your terminal.

Make sure to use Google Chrome (version 60 or higher) or Firefox (version 55 or higher) for the best experience.

🧩 API Endpoints

/api/minions

  • GET /api/minions to get an array of all minions.
  • POST /api/minions to create a new minion and save it to the database.
  • GET /api/minions/:minionId to get a single minion by id.
  • PUT /api/minions/:minionId to update a single minion by id.
  • DELETE /api/minions/:minionId to delete a single minion by id.

/api/ideas

  • GET /api/ideas to get an array of all ideas.
  • POST /api/ideas to create a new idea and save it to the database.
  • GET /api/ideas/:ideaId to get a single idea by id.
  • PUT /api/ideas/:ideaId to update a single idea by id.
  • DELETE /api/ideas/:ideaId to delete a single idea by id.

/api/meetings

  • GET /api/meetings to get an array of all meetings.
  • POST /api/meetings to create a new meeting and save it to the database.
  • DELETE /api/meetings to delete all meetings from the database. <>

🧪 Testing

This project includes a testing suite that covers essential functionality and edge cases.

Follow these steps to run the tests:

  1. Open the root project directory in your terminal.

  2. Run the following command to install all necessary testing dependencies (perform this step only once):

    npm install
  3. Execute the following command to run the tests:

    npm run test
  4. The terminal will display a list of tests along with information on whether each test passed. If a test fails, additional specific output explaining the reason for the failure will be provided.

  5. While the terminal is open, the tests will automatically re-run each time you save server files. To exit the testing loop, use Ctrl + C.

  6. If you prefer to run the tests only once without the automatic re-run feature, you can do so and then exit the terminal.you can run the mocha command in the terminal from your project root directory.

About

An API to serve information to a Boss Machine, a unique management application for today’s most accomplished (evil) entrepreneurs.

Topics

Resources

Stars

Watchers

Forks