# tchawla827/sports-tournament-management-system architecture

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

- Interactive diagram: https://gitdiagram.com/tchawla827/sports-tournament-management-system
- Repository: https://github.com/tchawla827/sports-tournament-management-system

## Overview

This is a JavaFX desktop system for managing sports-complex operations through department-specific screens backed by JDBC/MySQL. The primary user workflow is login, role-based dispatch to a department workspace, and then managing or viewing that department’s records. Its domain areas include registration, finance, maintenance, inventory, emergencies, attendance, coaching, and manager oversight. The sampled controllers show direct database access for several workflows; other capabilities and department responsibilities are retained from the README, but their internal wiring is not inferred.

Main entry points: [`Sports Complex/src/sports/complex/login/LoginController.java`](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/login/LoginController.java) (Login), [`Sports Complex/src/Database/DbQuery.java`](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/Database/DbQuery.java) (JDBC queries), [`Sports Complex/src/sports/complex/finance/FinanceController.java`](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/FinanceController.java) (Finance workspace), [`Sports Complex/src/sports/complex/SportsComplex.java`](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/SportsComplex.java) (Desktop entry)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Application access"]
  node_app["Desktop entry<br/>[SportsComplex.java]"]
  node_login["Login"]
end

subgraph group_people["People and coaching"]
  node_registration["Registration"]
  node_memberlist["Member records"]
  node_coach["Coach workspace"]
end

subgraph group_operations["Facility operations"]
  node_inventory["Inventory"]
  node_maintenance["Maintenance"]
  node_emergency["Emergency records"]
  node_equipment["Medical equipment"]
end

subgraph group_oversight["Finance and oversight"]
  node_attendant["Attendance marking"]
  node_manager["Manager workspace"]
  node_mgrattendance["Attendance review"]
  node_finance["Finance workspace"]
  node_payroll["Payroll"]
  node_transactions["Membership transactions"]
  node_bills["Bill payments"]
  node_funds["Fund requests"]
end

subgraph group_persistence["Data access"]
  node_dbquery["JDBC queries<br/>[DbQuery.java]"]
  node_mysql[("MySQL records")]
end

node_staff(("Department staff"))

node_staff -->|"opens"| node_app
node_app -->|"starts at"| node_login
node_staff -->|"authenticates"| node_login
node_login -->|"checks credentials"| node_dbquery
node_login -->|"dispatches role"| node_registration
node_login -->|"dispatches role"| node_coach
node_login -->|"dispatches role"| node_attendant
node_login -->|"dispatches role"| node_maintenance
node_login -->|"dispatches role"| node_manager
node_registration -->|"registers records"| node_dbquery
node_memberlist -->|"loads members"| node_dbquery
node_coach -->|"loads schedule and trainees"| node_dbquery
node_inventory -->|"issues items"| node_dbquery
node_maintenance -->|"reads sports list"| node_dbquery
node_attendant -->|"loads departments"| node_dbquery
node_mgrattendance -->|"loads attendance"| node_dbquery
node_finance -->|"opens"| node_payroll
node_finance -->|"opens"| node_transactions
node_finance -->|"opens"| node_bills
node_finance -->|"opens"| node_funds
node_dbquery -->|"queries and updates"| node_mysql

click node_app "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/SportsComplex.java"
click node_login "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/login/LoginController.java"
click node_registration "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/registration/RegistrationController.java"
click node_memberlist "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/registration/members/AllMembersController.java"
click node_coach "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/coach/CoachController.java"
click node_inventory "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/inventory/InventoryController.java"
click node_maintenance "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/maintenance/MaintenanceController.java"
click node_emergency "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/emergency/EmergencyController.java"
click node_equipment "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/emergency/MedicalEquipmentController.java"
click node_attendant "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/attendant/AttendantController.java"
click node_manager "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/manager/ManagerController.java"
click node_mgrattendance "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/manager/AttendanceController.java"
click node_finance "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/FinanceController.java"
click node_payroll "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/EmployeesController.java"
click node_transactions "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/MembershiptransactionsController.java"
click node_bills "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/BillsController.java"
click node_funds "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/ReqFunds/ReqFundsController.java"
click node_dbquery "https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/Database/DbQuery.java"

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 toneBlue
class node_registration,node_memberlist,node_coach toneAmber
class node_inventory,node_maintenance,node_emergency,node_equipment toneMint
class node_attendant,node_manager,node_mgrattendance,node_finance,node_payroll,node_transactions,node_bills,node_funds toneRose
class node_dbquery,node_mysql,node_staff toneIndigo
```

## Components

### Application access

- [Desktop entry](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/SportsComplex.java): `Sports Complex/src/sports/complex/SportsComplex.java`
- [Login](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/login/LoginController.java): `Sports Complex/src/sports/complex/login/LoginController.java`

### People and coaching

- [Registration](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/registration/RegistrationController.java): `Sports Complex/src/sports/complex/registration/RegistrationController.java`
- [Member records](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/registration/members/AllMembersController.java): `Sports Complex/src/sports/complex/registration/members/AllMembersController.java`
- [Coach workspace](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/coach/CoachController.java): `Sports Complex/src/sports/complex/coach/CoachController.java`

### Facility operations

- [Inventory](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/inventory/InventoryController.java): `Sports Complex/src/sports/complex/inventory/InventoryController.java`
- [Maintenance](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/maintenance/MaintenanceController.java): `Sports Complex/src/sports/complex/maintenance/MaintenanceController.java`
- [Emergency records](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/emergency/EmergencyController.java): `Sports Complex/src/sports/complex/emergency/EmergencyController.java`
- [Medical equipment](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/emergency/MedicalEquipmentController.java): `Sports Complex/src/sports/complex/emergency/MedicalEquipmentController.java`

### Finance and oversight

- [Attendance marking](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/attendant/AttendantController.java): `Sports Complex/src/sports/complex/attendant/AttendantController.java`
- [Manager workspace](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/manager/ManagerController.java): `Sports Complex/src/sports/complex/manager/ManagerController.java`
- [Attendance review](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/manager/AttendanceController.java): `Sports Complex/src/sports/complex/manager/AttendanceController.java`
- [Finance workspace](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/FinanceController.java): `Sports Complex/src/sports/complex/finance/FinanceController.java`
- [Payroll](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/EmployeesController.java): `Sports Complex/src/sports/complex/finance/EmployeesController.java`
- [Membership transactions](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/MembershiptransactionsController.java): `Sports Complex/src/sports/complex/finance/MembershiptransactionsController.java`
- [Bill payments](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/BillsController.java): `Sports Complex/src/sports/complex/finance/BillsController.java`
- [Fund requests](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/sports/complex/finance/ReqFunds/ReqFundsController.java): `Sports Complex/src/sports/complex/finance/ReqFunds/ReqFundsController.java`

### Data access

- [JDBC queries](https://github.com/tchawla827/sports-tournament-management-system/blob/master/Sports%20Complex/src/Database/DbQuery.java): `Sports Complex/src/Database/DbQuery.java`
- **MySQL records**

### Other components

- **Department staff**

## Connections

- Department staff → Desktop entry: opens
- Desktop entry → Login: starts at
- Department staff → Login: authenticates
- Login → JDBC queries: checks credentials
- Login → Registration: dispatches role
- Login → Coach workspace: dispatches role
- Login → Attendance marking: dispatches role
- Login → Maintenance: dispatches role
- Login → Manager workspace: dispatches role
- Registration → JDBC queries: registers records
- Member records → JDBC queries: loads members
- Coach workspace → JDBC queries: loads schedule and trainees
- Inventory → JDBC queries: issues items
- Maintenance → JDBC queries: reads sports list
- Attendance marking → JDBC queries: loads departments
- Attendance review → JDBC queries: loads attendance
- Finance workspace → Payroll: opens
- Finance workspace → Membership transactions: opens
- Finance workspace → Bill payments: opens
- Finance workspace → Fund requests: opens
- JDBC queries → MySQL records: queries and updates
