Ride my way connect drivers and passengers together so that a passenger can get a ride through the Ride-My-Way app. An application that allows passengers to make request to rides offered by drivers.
Project is currently being built with the Project Management Tool, Pivotal Tracker. You can find the template at https://www.pivotaltracker.com/n/projects/2179186
Application is hosted at https://ridemyway-danieladek.herokuapp.com/App/src/markup/index.html
Template is hosted at https://danieladek.github.io/Ride-My-Way/UI/
API is deployed at https://ridemyway-danieladek.herokuapp.com/api/v1/rides
Documentation is hosted at https://ridemyway-danieladek.herokuapp.com/api-docs
- NodeJS - Runtime Environment
- ExpressJs - Web Application Framework
- PostgreSql - Database Management Tool
- ESLint - Linter Tool
- Babel - Compiler for Next Generation JavaScript
- Mocha - JavaScript Test Framework for API Tests
- Chai - TDD/BDD Assertion Library for Node library for testing node.js HTTP servers
- nyc - Code Coverage Generator
- Signup and Login
- Create Rides Offers
- Accept Or Reject A Request As A Driver
- Get Notifications On Driver's Action
- Modify Profile
- Make A Request To An Available Ride As A Passenger
- Get Notifications On Driver's Response
- Reset Password Where Neccessary
- git clone Ride-My-Way github repo
- Run
npm install
to install packages - Run
npm run start:dev
to start the server - Navigate to localhost:3000/App/src/markup/index.html in browser to access the application
- Postman - API Toolchain to test enpoint
- After installing as shown above
- Navigate to localhost:3000/api/v1/ in Postman to access the application
-
After installing as shown
-
Run
npm run test
-
It will lint code, run test and display coverage data as generated by Istanbul's nyc
You can run npm run start:dev
in development to use Nodemon
Nodemon watches for file changes and restarts your code.
API | HTTP verb | Action |
---|---|---|
/api/v1/signup | POST | Create new user |
/api/v1/login | POST | Log in user |
/users/rides | POST | Create new ride offer |
/rides/{rideId} | GET | Get a ride |
/rides/{rideId}/request | POST | Request a ride |
/user/forget-password | PUT | Generate a token to reset your password |
/user/reset-password | PUT | Create a new password |
/users/rides/{rideId}/requests/{requestId} | PUT | Accept or Reject a ride |
/user/rides/{rideId}/requests | GET | Fetch all requests to a ride |
/user/requests | GET | Fetch all requests of a user |
/user/passengers/requests | GET | Fetch all requests to a ride |
/rides | GET | Fetch all available rides |
/user/rides | GET | Fetch all rides of a user |