Flight Management View All Flights: Browse complete flight schedules in a tabular format Add New Flights: Easy flight creation with validation Update Flight Status: Real-time status updates (Scheduled, Delayed, Cancelled, Completed) Delete Flights: Safe removal with confirmation dialogs Flight Statistics: View counts and status distribution
Pilot Management Pilot Directory: Complete list of all pilots with details Add New Pilots: Simple pilot registration Pilot Information: Track licenses and experience levels Quick Search: Easy navigation through pilot records
User Experience Modern GUI: Professional dark theme with intuitive navigation Responsive Design: Adapts to different screen sizes Visual Feedback: Color-coded status indicators and icons Error Handling: Comprehensive validation and user-friendly error messages
Installation Prerequisites Python 3.8 or higher Tkinter (usually included with Python)
Create the SQLite database Generate sample data Verification Upon first run, the system will: Create my_flights.db database file Populate with sample flights and pilots
Usage Getting Started Launch the Application: Run the Python script Navigate Tabs: Use the tabbed interface to access different features View Data: All flights and pilots are loaded automatically Perform Actions: Use buttons to add, update, or delete records
Key Operations Managing Flights Go to the Flights tab
Add Flight: Click "+ Add Flight" and fill the form Update Status: Select a flight and click the edit icon to Update Flight Status. Delete Flight: Select a flight and click the dust icon to Delete Flight.
Managing Pilots Go to the Pilots tab Add Pilot: Click '+' Add Pilot and complete the form View Details: All pilot information is displayed in the table Quick Actions Go to the Quick Actions tab Use one-click buttons for common operations Monitor system activity in the log panel
Database Schema Flights Table Column Type Description id INTEGER Primary key, auto-increment flight_number TEXT Unique flight identifier destination TEXT Flight destination city departure_time TEXT Scheduled departure time status TEXT Current status (Scheduled/Delayed/Cancelled/Completed) Pilots Table Column Type Description id INTEGER Primary key, auto-increment name TEXT Pilot's full name license TEXT License number experience INTEGER Years of experience
Project Structure
flight-management-system
main.py
my_flights.db
README.md
Tkinter: GUI framework for desktop applications SQLite: Lightweight database for data persistence ttk: Themed widgets for modern UI components Key Python Libraries sqlite3: Database operations and management tkinter: Graphical user interface tkinter.ttk: Enhanced widget styling
bash
python --version 2. Tkinter Not Available bash
sudo apt-get install python3-tk