Online Bus Booking System REST API
- User can Sign up
- User can Sign in
- Admin can create a trip
- Admin can cancel a trip
- Both admin and users can see all trips
- Both admin and users can see a specific trip
- Users can book a seat on a trip
- View all bookings. And admin can see all bookings, while a user can see all of his/her bookings
- Users can delete their bookings
- Users can get a list of filtered trips based on origin
- Users can get a list of filtered trips based on destination
- Users can specify their seat numbers when making a booking
- Node/Express/Typescript: Server
- Mysql: Primary Storage
- TypeORM: Object-relational Mapper
- AWS S3: Blob Storage
- Stripe: Payment
- Twilio/SendGrid: Email service
- ESLint
- Jest
- GitHub actions
You can either fork this repository or Clone It by opening your terminal, navigating where you want to save it and run
git clone https://github.com/desirekaleba/busee.gitEnter the project folder
cd buseeRename the file .env.example to .env and update the variable values with valid ones.
You can set up the project with
npm installAnd run it with 1.Development
npm run start:dev- Production
npm run build && npm start- Or run test suits with
npm testYou can as well check for linting erros with
npm run lintOr format errors with
npm run format:checkSee the docs.
See the LICENSE.
PS: Project still under development...