Skip to content

JimmyTron/wayfarer

 
 

Repository files navigation

Build Status Coverage Status Maintainability

	██╗    ██╗ █████╗ ██╗   ██╗███████╗ █████╗ ██████╗ ███████╗██████╗
	██║    ██║██╔══██╗╚██╗ ██╔╝██╔════╝██╔══██╗██╔══██╗██╔════╝██╔══██╗
	██║ █╗ ██║███████║ ╚████╔╝ █████╗  ███████║██████╔╝█████╗  ██████╔╝
	██║███╗██║██╔══██║  ╚██╔╝  ██╔══╝  ██╔══██║██╔══██╗██╔══╝  ██╔══██╗
	╚███╔███╔╝██║  ██║   ██║   ██║     ██║  ██║██║  ██║███████╗██║  ██║
	 ╚══╝╚══╝ ╚═╝  ╚═╝   ╚═╝   ╚═╝     ╚═╝  ╚═╝╚═╝  ╚═╝╚══════╝╚═╝  ╚═╝

WayFarer 🚌

WayFarer is a public bus transportation booking service.

An Andela Bootcamp Challenge.

For API documentation, please visit https://wayfarer-adc-nthomas.herokuapp.com/api/v2/api-docs/

Table of Contents

Live Link 🌐

https://nignanthomas.github.io/wayfarer/UI/html

Admin route: https://nignanthomas.github.io/wayfarer/UI/html/admin/admin-bookings.html

Features 🚀

  1. User can sign up. Sign Up Page
  2. User can sign in. Sign In
  3. Admin can create a trip. Create Trip
  4. Admin can cancel a trip. Cancel Trip
  5. Both Admin and Users can see all trips. Admin Trips / User Trips
  6. Both Admin and Users can see a specific trip. Admin Trip / User Trip
  7. Users can book a seat on a trip. Book Trip the click on Book button to choose a seat.
  8. View all bookings. An Admin can see all bookings, while user can see all of his/her bookings. Admin Bookings / User Bookings
  9. Users can delete their booking. Delete Booking then click on Delete button.

Optional Features ✈️

  • Users can get a list of filtered trips based on origin. Filter Origin then fill From field in the search bar to specify origin city.
  • Users can get a list of filtered trips based on destination. Filter Origin then fill To field in the search bar to specify destination city.
  • Users can specify their seat numbers when making a booking. Book Trip the click on Book button to specify your seat.

API Endpoints 💧

  • Sign up endpoint

Endpoint Request Method Request parameter
/api/v2/auth/signup POST
  • Sign in endpoint

Endpoint Request Method Request parameter
/api/v2/auth/signin POST
  • Trips endpoint

Endpoints Request Method Request parameter
/api/v2/trips POST Authhorization token
/api/v2/trips GET Authhorization token
/api/v2/trips/?origin=Kigali GET origin && Authhorization token
/api/v2/trips/?destination=Nairobi GET destination && Authhorization token
/api/v2/trips/?origin=Kigali&destination=Nairobi GET origin & destination && Authhorization token
/api/v2/trips/:id GET id && Authhorization token
/api/v2/trips/:id PATCH id && Authhorization token
/api/v2/trips/:id/cancel PATCH id && Authhorization token
/api/v2/trips/:id DELETE id && Authhorization token
  • Bookings endpoint

Endpoints Request Method Request parameter
/api/v2/bookings POST Authhorization token
/api/v2/bookings GET Authhorization token
/api/v2/bookings/:id GET id && Authhorization token
/api/v2/bookings/:id PATCH id && Authhorization token
/api/v2/bookings/:id DELETE id && Authhorization token

Prerequisites 🔧

  • Clone this project with git clone https://github.com/nignanthomas/wayfarer.git.
  • Head to project directory cd wayfarer

UI

  • Navigate to UI/html folder cd UI/html
  • These are HTML and CSS based pages that can be run directly in your browser.

Server

  • Install the project dependencies npm install
  • Launch the server npm start

Technologies Stack ⚙️

Frontend-UI Backend-API
HTML Nodejs/Express
CSS Mocha
JS Travis-CI

Management 📝

This project is managed using Pivotal Tracker.

Contribution Guidelines 👬

  1. Explain why you're making a change.
  2. Please consider the scope of your change.
  3. Please modify only one template per pull request.
  4. The more you can make me understand the change you're making, the more likely I'll be to accept your contribution quickly.

Bugs 🐛

No known bugs. If you spot one, kindly email me @ nignanthomas@gmail.com

Author 💻

        _                         _   _                               
  _ __ (_) __ _ _ __   __ _ _ __ | |_| |__   ___  _ __ ___   __ _ ___
 | '_ \| |/ _` | '_ \ / _` | '_ \| __| '_ \ / _ \| '_ ` _ \ / _` / __|
 | | | | | (_| | | | | (_| | | | | |_| | | | (_) | | | | | | (_| \__ \
 |_| |_|_|\__, |_| |_|\__,_|_| |_|\__|_| |_|\___/|_| |_| |_|\__,_|___/
          |___/

Thomas Nignan

Acknowledgments 🙇

Andela Rwanda

About

WayFarer is a public bus transportation booking service.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 44.2%
  • JavaScript 43.0%
  • CSS 12.8%