The flight reservation system is a web platform that provides the facility to search and book tickets online. It helps to manage the ticket booking records as well as the booking records and the details of the customers going to travel.
This project is following microservice-architecture and build with the help of NodeJs. Each request is first sent to the gateway which forwards it based on the request country, it then reaches the country load balancer which redirects to the nearest registered microservice.
A customer can view all the available flights. Customers can search the flight according to the source and destination. Customers can book a ticket after login into the application, for the first-time customer have to register in the system.
- Front-End Html, CSS, JS.
- Back-end: NodeJs ExpressJs.
- Database MongoDB.
- Navigate to Gateway folder inside the project using cd command
- Run
npm install - Run
npm start
- Navigate to India folder inside the project using cd command
- Run
npm install - Run
npm start
- Navigate to Delhi and Kolkata folder inside the project using cd command
- Run
npm install - Run
npm start
- Get list of flights based on query params provided
- Source, Destination, StartDate, ReturnDate are the params where Return date is optional and first three are required
- Can be accessed by all users
- Get details regarding a single flight
- Can be accessed by admin user and registered vendor for third party access
- Add new flights to the database
- Can be accessed only by admin user
- This endpoint is used for login
- Cookies are set for session management
- Can be accessed by all users
- Create new user
- Can be accessed by all users
- Used for logging users out and destroying session
- Used for initiating password
- Generates a password reset token with expiry date
- Used for password reset
- Requires valid reset password token to reset
- Used for booking flights
- A person can book flight for more than one traveller at once
- Can be used by all type of users
- Returns details of logged in user
- Automatically determines logged in user using session cookies



