Flight Reservation System
π Description
The Flight Reservation System is a Java-based solution that allows users to quickly book flights and manage booking information, updates, and cancellations easily. It consolidates data from different airline carriers and thus provides all the necessary details and rates in real-time. In addition, administrators of flight data can also quickly view, create, and update any information about flights, bookings, routes, and schedules.
π» Technologies
Backend Technologies:
- Java 8
- Spring Boot
- JPA
- REST API
- JUnit Testing
Frontend Technologies
- HTML
- CSS
- Bootstrap
- Typescript
- Angular
Database Management
- Oracle
- H2 Database
βΉοΈ Background
How many times have you started dreaming of a new trip, but then the hassle of planning, finding the right flight, and booking it was so frustrating as to make you wonder if the trip was worth it?! Those frustrations end today with the Flight Reservation System's one-stop shop for your tickets!
βοΈ Features
The Flight Reservation System can be accessed by two categories of users: Customers and Administrators.
Features for Customeres
- Customers can create a new account in order to log in.
- Customers can search available flights.
- Customers can make a booking, view current bookings, and modify and cancel a booking, if needed.
- Customers can see airport details for the airports associated with their flight(s).
Features for Administrators
- Administrators can view all details for flights, schedules, and routes.
- Administrators can add, modify, and cancel flights, schedules, and routes.
π· Screenshots
tbd
π Backlog
The Flight Reservation System does not currently include the following features:
- Generating seating plans
- Generating boarding passes
- Integrating with third-party applications, such as email and SMS
- Processing payments
π€ Contributors
Sanchit Singhal
Shaivi Sinha
Shivani Luthra
Vaibhav229
Anca Simon
For Developers
Access the App
- Install Angular CLI if not already installed in your system.
- Clone this project.
- Run
npm install
in the cmd
line in the directory of the project.
- Then, run
ng serve
command.
Want to Contribute?
- Fork this repo.
- Check out the Issues tab and comment on the issue you would like to work on.
- Clone the forked repo.
- Test your changes thoroughly. Add meaningful and accurate commit messages. Include inline comments for complex logic and any external library. Update Readme if necessary.
- Create a Pull Request. Check out this tutorial for details: https://www.digitalocean.com/community/tutorials/how-to-create-a-pull-request-on-github.
Technical Details
How to Run It
- Run
ng serve
for a dev server.
- Navigate to http://localhost:4200/.
- The app will automatically reload if you change any of the source files.
Code Scaffolding
- Run
ng generate component component-name
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module
.
Build
- Run
ng build
to build the project. The build artifacts will be stored in the dist/ directory
. Use the --prod
flag for a production build.
Running Unit Tests
- Run
ng test
to execute the unit tests via Karma.
Running End-to-End Tests
- Run
ng e2e
to execute the end-to-end tests via Protractor.
Further Help
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.