Purdue 2026 Capstone Project
A web-based flight booking platform that allows users to search for flights, select seats, and complete bookings with seat selection and availablity updates and flight filtering.
This system is a web-based application that enables passengers to search for flights by departure and arrival airport, filter results by cost, time, and airline, and select seats from an interactive cabin map.
- Flight Search — Search flights by departure and arrival airport with a selected date
- Flight Filtering — Filter results by price range, departure time, and airline
- Seat Selection — Interactive cabin map for economy, business, and first class
- Seat Updates — Seat availability automatically updates when a booking is confirmed
- Booking Confirmation — Instant confirmation upon completing checkout
| Layer | Technology |
|---|---|
| Frontend | HTML, CSS, JavaScript |
| Backend | Python, FastAPI |
| Database | Microsoft Azure SQL Server |
| API | Microsoft Azure API Server |
| Deployment | GitHub Pages + Azure |
Visit one of the following pages:
- Homepage: https://sunaio.github.io/Flight-Booking-System/index.html
- Flight Search: https://sunaio.github.io/Flight-Booking-System/booksearch.html
If the backend server was not already running, it may take 1–3 minutes to boot up. Refresh the page if nothing shows up or an error shows up.
| Field | Description |
|---|---|
| From | Departure airport |
| To | Arrival airport |
| Date | Desired departure date |
Click Search Flights to view available results.
Click the Filter button beneath the search box to expand filtering options:
- Minimum and maximum flight cost
- Departure time range
- Airline preference
Click Apply Filters to update the results.
- Find a flight you want and click Book Now
- You will be taken to the checkout page
- Fill in your passenger information
- Click Confirm Booking after you filled out your information or cancel if you don't like your current flight
- Check your information and then click Submit
If no flights are loaded after 1-3 minutes and permanently showing error, this could mean 2 possible things:
- Microsoft Azure funding exhausted - Currently as of April 24, 2026, there is $100 worth of free student funding.
- Student funds expired - Azure free student funds last for 12 months (1 year) upon obtainment.
If the funds expired/ran out, I will not be recharging with actual money as the servers are expensive to run.
flight-booking-system/
├── assets/ # Images used throughout the project
├── css/
│ ├── styles.css # Styling for the homepage (index)
│ ├── booksearch.css # Styling for the flight search page
│ └── checkout.css # Styling for the checkout page
├── dataset/ # Dataset used in this project
├── scripts/ # JavaScript files
├── index.html # Homepage
├── booksearch.html # Flight search page
├── checkout.html # Booking checkout page
├── flightapi.py # Backend FastAPI server
├── requirements.txt # Python dependencies
└── README.md
This project uses a GitHub Actions workflow (.github/workflows/deploy.yml) that automatically deploys to Microsoft Azure hosting servers on every push to main.
This project is licensed under the MIT License.