- Osman Yumer telerikacademy.com/Users/oyumer
- Stefka Marinova telerikacademy.com/Users/jibonita
Project theme: Bus Travel Schedule System - API that gives info for bus routes from point A to point B, opportunity to reserve a ticket for the entire bus route for a part of it
The application has:
- public part - search for a route by given start and end point
- private part - registered companies can add routes, preview tickets reserved for their routes; registered users can reserve a ticket
- administrative part - admin user can view all user groups, delete users
The public part of the project is visible without authentication.
This public part includes:
- the user login and user registration forms
- search for a route by given start and end point
Registered users has private part in the web application accessible after successful login. There are registered companies and clients.
Companies can:
- add routes, add stops, preview tickets reserved for their routes;
Clients can:
- reserve a ticket
System administrators can
- view all user groups, delete users
- system administrators does not register. They are added as modified manually in the db
$ npm install# initial DB tables create and fill usertypes
$ npm run start-db
# development
$ npm run start
# watch mode
$ npm run start:dev
# unit tests
$ npm run test
# test coverage
$ npm run test:cov| Routes | Admin | Company | Client | Public |
|---|---|---|---|---|
| auth/register (POST) | ✔️ | ✔️ | ✔️ | ✔️ |
| auth/login (POST) | ✔️ | ✔️ | ✔️ | ✔️ |
| /users | ✔️ | ✘ | ✘ | ✘ |
| /users/clients | ✔️ | ✘ | ✘ | ✘ |
| /users/companies | ✔️ | ✘ | ✘ | ✘ |
| /users (DELETE) | ✔️ | ✘ | ✘ | ✘ |
| /routes | ✔️ | ✔️ | ✘ | ✘ |
| /routes (POST) | ✘ | ✔️ | ✘ | ✘ |
| /routes/search?query-params | ✔️ | ✔️ | ✔️ | ✔️ |
| /routes/:id | ✔️ | ✔️ | ✔️ | ✔️ |
| /routes/:id/details | ✔️ | ✔️ | ✔️ | ✘ |
| /routes/id (DELETE) | ✘ | ✔️ | ✘ | ✘ |
| /stops | ✔️ | ✘ | ✘ | ✘ |
| /stops (POST) | ✔️ | ✔️ | ✘ | ✘ |
| /tickets/userid | ✘ | ✘ | ✔️ | ✘ |
| /tickets/route/:id | ✘ | ✔️ | ✘ | ✘ |
| /tickets (POST) | ✘️ | ✘ | ✔️ | ✘ |
| /tickets/:id (DELETE) | ✘ | ✔️ | ✔️ | ✘ |
Trello link: https://trello.com/b/Hg776xwe/travel-schedule