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.git
Enter the project folder
cd busee
Rename the file .env.example
to .env
and update the variable values with valid ones.
You can set up the project with
npm install
And run it with 1.Development
npm run start:dev
- Production
npm run build && npm start
- Or run test suits with
npm test
You can as well check for linting erros with
npm run lint
Or format errors with
npm run format:check
See the docs.
See the LICENSE.
PS: Project still under development...