A modern desktop application for flight reservations built with Python, Tkinter, and SQLite.
- Modern and professional UI design with blue header and card layout
- Create flight reservations with passenger and flight details
- View all reservations in a tabular format
- Search for reservations by name, flight number, departure, or destination
- Edit existing reservations
- Delete reservations
- SQLite database for storing reservation information
- Splash screen with application logo
- Executable file for easy distribution
├── main.py # Entry point of the application
├── database.py # SQLite database operations
├── home.py # Home page with navigation cards
├── booking.py # Form for creating new reservations
├── reservations.py # View and manage existing reservations
├── edit_reservation.py # Edit or delete a specific reservation
├── flights.db # SQLite database file (created on first run)
├── requirements.txt # Required Python libraries
├── dist/ # Directory containing executable file
│ └── main.exe # Windows executable
├── LICENSE # License information
├── README.md # Project documentation
The application uses a simple database with a single table:
CREATE TABLE reservations (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
flight_number TEXT NOT NULL,
departure TEXT NOT NULL,
destination TEXT NOT NULL,
date TEXT NOT NULL,
seat_number TEXT NOT NULL
);- Python 3.x
- Tkinter (included with most Python installations)
- SQLite3 (included with Python)
-
Clone the repository:
git clone https://github.com/Ichrafsassi/Flight-Reservation-Desktop-App-Using-Tkinter-and-SQLite.git cd Flight-Reservation-Desktop-App-Using-Tkinter-and-SQLite -
Install required dependencies:
pip install -r requirements.txt
-
Run the application:
python main.py # Windows python3 main.py # Linux/macOS
- Download the latest release from the GitHub repository
- Extract the ZIP file
- Run
main.exefrom the extracted folder
- Download the latest release from the GitHub repository
- Extract the archive file
- Make the file executable:
chmod +x main - Run the executable:
./main
- Simply double-click the
create_windows_exe.batfile included in this repository - The script will automatically install required dependencies and create the executable
- Once completed, the executable will be available in the
distfolder
-
Install PyInstaller:
pip install pyinstaller
-
Navigate to the project directory and run:
pyinstaller --onefile --windowed main.py
-
The executable will be created in the
distdirectory
- For a comprehensive guide on creating Windows executables, see WINDOWS_EXE_GUIDE.md
- If you encounter issues with the Windows executable, see WINDOWS_EXE_TROUBLESHOOTING.md
- Home Page: Navigate between booking a new flight or viewing existing reservations
- Booking Page: Enter passenger and flight details to create a new reservation
- Reservations Page: View all reservations with search functionality
- Edit Page: Modify or delete an existing reservation
- User authentication system
- Flight search API integration
- Email confirmation for bookings
- Seat map selection
- Boarding pass generation