In this challenge, you will write an API that can be used to manage Cars stored in a Relational Database.
Follow these steps for starting your project.
- Import (NOT FORK) this repository into your account and clone your version.
- Add your project manager as collaborator on your repository.
- Create a new branch: git checkout -b
<firstName-lastName>
. - Implement the project on your newly created
<firstName-lastName>
branch, committing changes regularly. - Push commits: git push origin
<firstName-lastName>
.
Follow these steps for completing your project.
- Submit a Pull-Request to merge
<firstName-lastName>
Branch into master (student's Repository). Please don't merge your own pull request - Add your project manager as a reviewer on the pull-request
- Your project manager will count the project as complete by merging the branch back into master.
- Using
knex migrations
, design and write a schema for thecars
table using the specifications below. - Configure
knex
to connect to a/data/car-dealer.db3
database using thesqlite3
npm module. - Write endpoints to support
CREATE
andREAD
operations on thecars
resource. - Use a rest client like Insomnia or Postman to test your API.
The client for this API is a car dealer who has provided the following specs:
- The critical information for each car is the VIN, make, model, and mileage.
- They also track transmission type and status of the title (clean, salvage, etc.), but this information is not always immediately known.
- Add seed data to the database using
knex seeds
- Add
UPDATE
andDELETE
operations to your API. - Write a schema file for a
sales
table. This table should track information on the sale of each car. You may wish to researchforeign keys
in order to link each sale to the entry incars
which sold.