Skip to content

StevenDerrick/WayFarer-V2

Repository files navigation

License Badge codecov Maintainability Build Status Contributors

🚦 🚍 WayFarer_V2 🚐 🚏

Wayfarer is an online Public bus transportation service.

Motivation

Internet has solved many day to day problems. One of those problems was a big number of people standing in front of a travel agency office booking tickets for their picnics and vacation. WAYFARER web services help you in that occasion and make things easy for you in a short time. You can use this service to book any public bus service and make your vacation a reality.

Gh-pages and heroku app links

Way-Farer front end is hosted on gh-pages Way-Farer UI and the backend is on Heroku Way-Farer API

Framework and Technologies used

Built with

API end-points tested by

Continuous Integration and test coverage by

Features

  • Finding all available trips
  • Booking a particular trip
  • User can see all their bookings
  • User can delete their bookings
  • Users are able to sign in and sign out
  • Admin can create a new trip
  • Admin can see all available trips
  • Admin can cancel a particular trip

How to use?

You can access the app by passing through this link Way-Farer Website and then navigate through the website. You can now use its different features.

For API endpoints, You can access them by accessing Way-Farer API and consume them using POSTMAN.

Installation

Clone this repo locally to access the source codes

$ git clone https://github.com/StevenDerrick/Way-Farer.git
$ cd ./Way-Farer
$ npm install

To start the application run npm run dev or use Nodemon for restarting server on save.

Endpoints to create, views available products and create sale records

HTTP Method End point Public Access Action
POST /v1/auth/signup true Create a user in the database
POST /v1/auth/signin true User can sign in the API
GET /v1/trips true Fetch all trips​ records
GET /v1/trips/<trip_id> true Fetch a specific ​ trip​ record
POST /v1/trips true Create a trip by the admin
PATCH /V1/trips/<trip_id>/cancel true Cancel a particular trip by admin
POST /v1/bookings true Create a booking
GET /v1/bookings true Fetch bookings​ records by user and all by admin
DELETE /v1/bookings/<booking_id> true Delete a specific booking by user

Tests

$ npm run test

Licence

MIT © StevenDerrick

Author:

Steven Ishimwe