# sabiqureshi99/travel-agency-managment-system architecture

> Architecture diagram of the GitHub repository sabiqureshi99/travel-agency-managment-system, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sabiqureshi99/travel-agency-managment-system
- Repository: https://github.com/sabiqureshi99/travel-agency-managment-system

## Overview

TAMS is a desktop travel-agency management system for Hamza Travels & Tours. Its principal workflow is staff sign-in, then managing customers and travel services such as Umrah, flights, visas, and hotels, with related billing and reporting. The README also documents HR, tours, transport, suppliers, documents, dashboard, and settings. The graph follows the documented MVVM structure and sampled startup, authentication, database, and finance code; unsampled feature wiring is not inferred.

Main entry points: [`ui/windows/main_window.py`](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/windows/main_window.py) (Main window), [`ui/windows/login_window.py`](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/windows/login_window.py) (Login window), [`config/database.py`](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/config/database.py) (Database sessions), [`main.py`](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/main.py) (Application startup)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access and interface"]
  node_app["Application startup<br/>[main.py]"]
  node_login["Login window<br/>[login_window.py]"]
  node_main_window["Main window<br/>[main_window.py]"]
  node_dashboard["Dashboard<br/>[dashboard_page.py]"]
  node_settings["Settings<br/>[settings_page.py]"]
end

subgraph group_travel["Travel operations"]
  node_customers["Customer management"]
  node_booking["Umrah bookings"]
  node_flights["Flight bookings"]
  node_visas["Visa applications"]
  node_hotels["Hotel bookings"]
  node_other_travel["Other travel services"]
end

subgraph group_finance["Finance and insights"]
  node_accounting["Accounting"]
  node_financial_engine["Financial calculations"]
  node_reports["Reports"]
  node_report_generators["Report generation"]
end

subgraph group_platform["Shared platform"]
  node_auth["Authentication<br/>[auth_service.py]"]
  node_service_layer["Business services"]
  node_models["Domain models"]
  node_database_config["Database sessions<br/>[database.py]"]
  node_database[("Application database")]
  node_documents["Document storage<br/>[document.py]"]
  node_backup["Backup management<br/>[backup_service.py]"]
end

node_staff(("Agency staff"))

node_staff -->|"signs in"| node_login
node_app -->|"initializes database"| node_database_config
node_app -->|"opens"| node_login
node_login -->|"login succeeds"| node_main_window
node_login -->|"authenticates"| node_auth
node_main_window -->|"shows"| node_dashboard
node_main_window -->|"opens"| node_customers
node_main_window -->|"opens"| node_booking
node_main_window -->|"opens"| node_flights
node_main_window -->|"opens"| node_visas
node_main_window -->|"opens"| node_hotels
node_main_window -->|"opens"| node_other_travel
node_main_window -->|"opens"| node_accounting
node_main_window -->|"opens"| node_reports
node_main_window -->|"opens"| node_settings
node_auth -->|"opens sessions"| node_database_config
node_service_layer -->|"opens sessions"| node_database_config
node_database_config -->|"connects to"| node_database
node_financial_engine -->|"queries"| node_database
node_financial_engine -->|"reads"| node_models
node_reports -->|"generates reports"| node_report_generators

click node_app "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/main.py"
click node_login "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/windows/login_window.py"
click node_main_window "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/windows/main_window.py"
click node_dashboard "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/pages/dashboard/dashboard_page.py"
click node_settings "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/pages/settings/settings_page.py"
click node_auth "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/services/auth_service.py"
click node_customers "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/customers"
click node_booking "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/umrah"
click node_flights "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/flights"
click node_visas "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/visa"
click node_hotels "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/hotels"
click node_other_travel "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages"
click node_accounting "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/accounting"
click node_financial_engine "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/services/financial_engine.py"
click node_reports "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/reports"
click node_report_generators "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/reports"
click node_service_layer "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/services"
click node_models "https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/models"
click node_database_config "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/config/database.py"
click node_documents "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/models/document.py"
click node_backup "https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/services/backup_service.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app,node_login,node_main_window,node_dashboard,node_settings toneBlue
class node_customers,node_booking,node_flights,node_visas,node_hotels,node_other_travel toneAmber
class node_accounting,node_financial_engine,node_reports,node_report_generators toneMint
class node_auth,node_service_layer,node_models,node_database_config,node_database,node_documents,node_backup toneRose
class node_staff toneIndigo
```

## Components

### Access and interface

- [Application startup](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/main.py): `main.py`
- [Login window](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/windows/login_window.py): `ui/windows/login_window.py`
- [Main window](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/windows/main_window.py): `ui/windows/main_window.py`
- [Dashboard](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/pages/dashboard/dashboard_page.py): `ui/pages/dashboard/dashboard_page.py`
- [Settings](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/ui/pages/settings/settings_page.py): `ui/pages/settings/settings_page.py`

### Travel operations

- [Customer management](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/customers): `ui/pages/customers`
- [Umrah bookings](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/umrah): `ui/pages/umrah`
- [Flight bookings](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/flights): `ui/pages/flights`
- [Visa applications](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/visa): `ui/pages/visa`
- [Hotel bookings](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/hotels): `ui/pages/hotels`
- [Other travel services](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages): `ui/pages`

### Finance and insights

- [Accounting](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/accounting): `ui/pages/accounting`
- [Financial calculations](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/services/financial_engine.py): `services/financial_engine.py`
- [Reports](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/ui/pages/reports): `ui/pages/reports`
- [Report generation](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/reports): `reports`

### Shared platform

- [Authentication](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/services/auth_service.py): `services/auth_service.py`
- [Business services](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/services): `services`
- [Domain models](https://github.com/sabiqureshi99/travel-agency-managment-system/tree/master/models): `models`
- [Database sessions](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/config/database.py): `config/database.py`
- **Application database**
- [Document storage](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/models/document.py): `models/document.py`
- [Backup management](https://github.com/sabiqureshi99/travel-agency-managment-system/blob/master/services/backup_service.py): `services/backup_service.py`

### Other components

- **Agency staff**

## Connections

- Agency staff → Login window: signs in
- Application startup → Database sessions: initializes database
- Application startup → Login window: opens
- Login window → Main window: login succeeds
- Login window → Authentication: authenticates
- Main window → Dashboard: shows
- Main window → Customer management: opens
- Main window → Umrah bookings: opens
- Main window → Flight bookings: opens
- Main window → Visa applications: opens
- Main window → Hotel bookings: opens
- Main window → Other travel services: opens
- Main window → Accounting: opens
- Main window → Reports: opens
- Main window → Settings: opens
- Authentication → Database sessions: opens sessions
- Business services → Database sessions: opens sessions
- Database sessions → Application database: connects to
- Financial calculations → Application database: queries
- Financial calculations → Domain models: reads
- Reports → Report generation: generates reports
