Jack Shkifati

08 / 10 · Web app · Databases

Air Ticket Reservation System

A dual-interface flight reservation system in Python Flask on a normalized MySQL database, with separate customer and airline-staff portals and reporting built on aggregate SQL.

2
portals: customer and staff
Normalized
MySQL schema
Air Ticket Reservation System: project image from Jack’s site
Fig. 00 · From the project
Fig. 01

Try it

AI-generated voice and avatar
Interactive demoBook a fake flight through both portals
01

Problem & approach

The problem

Two kinds of users share one system: customers who search and buy flights, and airline staff who manage flights and need reports.

The approach

A normalized MySQL schema designed from ER and relational diagrams, and one Flask application with session-based authentication for both roles.

02

How it works

  1. Database designCustomers, staff, flights, airplanes, airports, tickets and ratings, modeled in ER and relational schema diagrams with enforced primary and foreign keys.
  2. ApplicationPython Flask with an HTML/CSS front end and session-based authentication for customer and staff roles.
  3. CustomersSearch flights, buy tickets and track their spending.
  4. Staff reportsAggregate SQL for revenue reports, frequent-customer analysis and month-by-month sales.
03

Results & stack

2
portals: customer and staff
Normalized
MySQL schema
  • Python
  • Flask
  • MySQL
  • HTML
  • CSS