A simple taxi 24 that carries out various taxi management task, show casing the following functinalities:
- DRIVER CRUD
- TRIPS CRUD
- Riders CRUD
- Overview
- 1. 🚀 Getting Started
- 2. 🔒 Authentication
- 3. 🔖 API Versioning
- 3. 💚 HTTP Response Codes
- 4. 🔖 Resources
- 5. 📝 License
To get started, ensure that you have NodeJS installed on your local machine:
- Yarn
-
Clone repository or clone your own fork
git clone git@github.com:Kibetchirchir/taxi24.git
-
Make a duplicate of
.env.example
and rename to.env
, then configure your credentials. -
Install dependencies by running
yarn
on your terminal. -
Build the application by running
yarn build
-
Two npm scripts are availiable to spin up the app server:
yarn start
spin up the server without watching for any file changesyarn dev:start
watches for any file changes and reloads the server
To test or consume api locally, you can make use of Postman or Insomnia
Test specs are implemented using jest .
Two npm scripts are available to run the test suite:
yarn test
- Performs a single full test suite run, including instanbul code coverage reporting. Summary coverage reports are written to stdout, and detailed HTML reports are available in/coverage/index.html
// todo
The second part of the URI specifies the API version you wish to access in the format v{version_number}
.
For example, version 1 of the API (most current) is accessible via:
http://localhost:3000/api/v1
Each response will be returned with one of the following HTTP status codes:
200
OK
The request was successful400
Bad Request
There was a problem with the request (security, malformed)401
Unauthorized
The supplied API credentials are invalid403
Forbidden
The credentials provided do not have permissions to access the requested resource404
Not Found
An attempt was made to access a resource that does not exist in the API500
Server Error
An error on the server occurred
// todo
URI | HTTP Method | Description |
---|---|---|
**/api/v1/drivers |
POST |
Get and POST drivers |
**/api/v1/riders |
POST |
Get and POST riders |
**/api/v1/trips |
POST |
Get and POST trips |
This project is open-sourced software licensed under the MIT license.