SendIT is a delivery service that allow users to send parcels to different destinations. It can be viewed online here.
The Project was managed using Pivotal Tracker, click here to view the board.
-
Clone the repository:
$ git clone https://github.com/teepha/send-it
-
Navigate into the cloned repository folder:
$ cd send-it
-
Install dependencies:
$ npm install
-
Start server
$ npm run start:dev
-
Navigate to your browser and type in: http://localhost:3030
v1 of the API is hosted on Heroku, visit http://teepha-send-it.herokuapp.com to access the endpoints.
POST => /api/v1/auth/signup => Register a user
POST => /api/v1/auth/login => Login a user
POST => /api/v1/parcels => Create a parcel delivery order
GET => /api/v1/parcels => Admin Fetch all parcel delivery orders
GET => /api/v1/parcels/:parcelId => Fetch a specific parcel delivery order
GET => /api/v1/users/:userId/parcels => Fetch all parcel delivery orders by a specific user
GET => /api/v1/user => Fetch User Information
PUT => /api/v1/parcels/:parcelId=> User change the details of a specific parcel delivery order
PUT => /api/v1/parcels/:parcelId/cancel => User cancel a specific parcel delivery order
PUT => /api/v1/parcels/:parcelId/status => Admin change the status of a specific parcel delivery order
PUT => /api/v1/parcels/:parcelId/presentLocation => Admin change the Present Location of a specific parcel delivery order
~ Babel/cli
~ Babel/core
~ Babel/node
~ Babel/preset-env
~ Babel-preset-airbnb
~ Body-parser
~ Express
~ Winston
~ Eslint
~ Eslint-config-airbnb-base
~ Eslint-plugin-import
~ Jasmine
~ Nodemon
~ Supertest
Run jasmine for the spec folder through bundle:
npm test
- Users can create accounts based on the following criteria: first name, last name, phone number, email address and password
- Users can log in to their accounts based on the following criteria: email address and password
- Users can create Parcel Delivery order based on the following criteria: pickup location, destination, recipient name and phone number
- Users can change the details of a Parcel Delivery order.
- Users can cancel a Parcel Delivery order.
- Users can see the details of Parcel Delivery order.
- Admin can change the status and present location of a Parcel Delivery order.
- Admin can view all Parcel Delivery orders.
- Fork it: Fork the send-it project
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request