# karremanoj5599-del/tenant-pgms architecture

> Architecture diagram of the GitHub repository karremanoj5599-del/tenant-pgms, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-10-01). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/karremanoj5599-del/tenant-pgms
- Repository: https://github.com/karremanoj5599-del/tenant-pgms

## Overview

This is a Flutter tenant property-management app. The apparent user journey is sign-in, entering the tenant shell, and using resident features such as dashboard, guests, mess, payments, notifications, logs, and support. The tree also shows shared authentication, API, model, and theme layers. The README provides no product-specific workflow details, and no Dart source was excerpted, so feature-to-layer relationships below are dashed and unverified rather than asserted as observed calls.

Main entry points: [`lib/features/shell/tenant_shell_screen.dart`](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/shell/tenant_shell_screen.dart) (Tenant shell), [`lib/services/api_service.dart`](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/services/api_service.dart) (API service), [`lib/app.dart`](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/app.dart) (App setup), [`lib/features/guests/guests_screen.dart`](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/guests/guests_screen.dart) (Guests and invites)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["App navigation"]
  node_main["App entry<br/>[main.dart]"]
  node_app_config["App setup<br/>[app.dart]"]
  node_routes["Routes<br/>[routes.dart]"]
  node_shell["Tenant shell"]
end

subgraph group_resident["Resident features"]
  node_login["Sign in<br/>[login_screen.dart]"]
  node_dashboard["Dashboard"]
  node_guests["Guests and invites<br/>[guests_screen.dart]"]
  node_visitor_invite["Visitor invites"]
  node_mess["Mess<br/>[mess_screen.dart]"]
  node_mess_scan["Mess scan"]
  node_payments["Payments<br/>[pay_screen.dart]"]
  node_receipt["Receipt"]
  node_notifications["Notifications"]
  node_logs["Logs<br/>[logs_screen.dart]"]
  node_profile["Profile"]
  node_support["Support"]
  node_more["More<br/>[more_screen.dart]"]
end

subgraph group_shared["Shared application layer"]
  node_auth_provider["Auth state<br/>[auth_provider.dart]"]
  node_api["API service<br/>[api_service.dart]"]
  node_api_config["API config<br/>[api_config.dart]"]
  node_models["Domain models"]
  node_theme["Theme state"]
end

subgraph group_platform["Mobile platforms"]
  node_android["Android host<br/>[MainActivity.kt]"]
  node_ios["iOS host<br/>[AppDelegate.swift]"]
end

node_resident(("Tenant"))

node_resident -.->|"starts at"| node_login
node_main -.->|"starts app"| node_app_config
node_app_config -.->|"uses routes"| node_routes
node_app_config -.->|"opens shell"| node_shell
node_login -.->|"uses auth"| node_auth_provider
node_shell -.->|"opens feature"| node_dashboard
node_shell -.->|"opens feature"| node_guests
node_shell -.->|"opens feature"| node_mess
node_shell -.->|"opens feature"| node_payments
node_shell -.->|"opens feature"| node_notifications
node_shell -.->|"opens feature"| node_logs
node_shell -.->|"opens feature"| node_profile
node_shell -.->|"opens feature"| node_support
node_shell -.->|"opens feature"| node_more
node_guests -.->|"opens invites"| node_visitor_invite
node_mess -.->|"opens scan"| node_mess_scan
node_payments -.->|"shows receipt"| node_receipt
node_dashboard -.->|"requests data"| node_api
node_guests -.->|"requests data"| node_api
node_mess -.->|"requests data"| node_api
node_payments -.->|"requests data"| node_api
node_notifications -.->|"requests data"| node_api
node_logs -.->|"requests data"| node_api
node_support -.->|"requests data"| node_api
node_api -.->|"uses config"| node_api_config
node_api -.->|"uses models"| node_models
node_android -.->|"hosts Flutter"| node_main
node_ios -.->|"hosts Flutter"| node_main

click node_main "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/main.dart"
click node_app_config "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/app.dart"
click node_routes "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/config/routes.dart"
click node_shell "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/shell/tenant_shell_screen.dart"
click node_login "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/auth/login_screen.dart"
click node_dashboard "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/dashboard/dashboard_screen.dart"
click node_guests "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/guests/guests_screen.dart"
click node_visitor_invite "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/guests/visitor_invite_screen.dart"
click node_mess "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/mess/mess_screen.dart"
click node_mess_scan "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/mess/mess_scan_screen.dart"
click node_payments "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/payments/pay_screen.dart"
click node_receipt "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/payments/receipt_dialog.dart"
click node_notifications "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/notifications/notifications_screen.dart"
click node_logs "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/logs/logs_screen.dart"
click node_profile "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/profile/profile_screen.dart"
click node_support "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/support/support_screen.dart"
click node_more "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/more/more_screen.dart"
click node_auth_provider "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/providers/auth_provider.dart"
click node_api "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/services/api_service.dart"
click node_api_config "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/config/api_config.dart"
click node_models "https://github.com/karremanoj5599-del/tenant-pgms/tree/main/lib/models"
click node_theme "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/providers/theme_provider.dart"
click node_android "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/android/app/src/main/kotlin/com/pgms/tenant/tenant_pgms/MainActivity.kt"
click node_ios "https://github.com/karremanoj5599-del/tenant-pgms/blob/main/ios/Runner/AppDelegate.swift"

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_main,node_app_config,node_routes,node_shell toneBlue
class node_login,node_dashboard,node_guests,node_visitor_invite,node_mess,node_mess_scan,node_payments,node_receipt,node_notifications,node_logs,node_profile,node_support,node_more toneAmber
class node_auth_provider,node_api,node_api_config,node_models,node_theme toneMint
class node_android,node_ios toneRose
class node_resident toneIndigo
```

## Components

### App navigation

- [App entry](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/main.dart): `lib/main.dart`
- [App setup](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/app.dart): `lib/app.dart`
- [Routes](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/config/routes.dart): `lib/config/routes.dart`
- [Tenant shell](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/shell/tenant_shell_screen.dart): `lib/features/shell/tenant_shell_screen.dart`

### Resident features

- [Sign in](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/auth/login_screen.dart): `lib/features/auth/login_screen.dart`
- [Dashboard](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/dashboard/dashboard_screen.dart): `lib/features/dashboard/dashboard_screen.dart`
- [Guests and invites](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/guests/guests_screen.dart): `lib/features/guests/guests_screen.dart`
- [Visitor invites](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/guests/visitor_invite_screen.dart): `lib/features/guests/visitor_invite_screen.dart`
- [Mess](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/mess/mess_screen.dart): `lib/features/mess/mess_screen.dart`
- [Mess scan](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/mess/mess_scan_screen.dart): `lib/features/mess/mess_scan_screen.dart`
- [Payments](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/payments/pay_screen.dart): `lib/features/payments/pay_screen.dart`
- [Receipt](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/payments/receipt_dialog.dart): `lib/features/payments/receipt_dialog.dart`
- [Notifications](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/notifications/notifications_screen.dart): `lib/features/notifications/notifications_screen.dart`
- [Logs](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/logs/logs_screen.dart): `lib/features/logs/logs_screen.dart`
- [Profile](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/profile/profile_screen.dart): `lib/features/profile/profile_screen.dart`
- [Support](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/support/support_screen.dart): `lib/features/support/support_screen.dart`
- [More](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/features/more/more_screen.dart): `lib/features/more/more_screen.dart`

### Shared application layer

- [Auth state](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/providers/auth_provider.dart): `lib/providers/auth_provider.dart`
- [API service](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/services/api_service.dart): `lib/services/api_service.dart`
- [API config](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/config/api_config.dart): `lib/config/api_config.dart`
- [Domain models](https://github.com/karremanoj5599-del/tenant-pgms/tree/main/lib/models): `lib/models`
- [Theme state](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/lib/providers/theme_provider.dart): `lib/providers/theme_provider.dart`

### Mobile platforms

- [Android host](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/android/app/src/main/kotlin/com/pgms/tenant/tenant_pgms/MainActivity.kt): `android/app/src/main/kotlin/com/pgms/tenant/tenant_pgms/MainActivity.kt`
- [iOS host](https://github.com/karremanoj5599-del/tenant-pgms/blob/main/ios/Runner/AppDelegate.swift): `ios/Runner/AppDelegate.swift`

### Other components

- **Tenant**

## Connections

- Tenant → Sign in: starts at
- App entry → App setup: starts app
- App setup → Routes: uses routes
- App setup → Tenant shell: opens shell
- Sign in → Auth state: uses auth
- Tenant shell → Dashboard: opens feature
- Tenant shell → Guests and invites: opens feature
- Tenant shell → Mess: opens feature
- Tenant shell → Payments: opens feature
- Tenant shell → Notifications: opens feature
- Tenant shell → Logs: opens feature
- Tenant shell → Profile: opens feature
- Tenant shell → Support: opens feature
- Tenant shell → More: opens feature
- Guests and invites → Visitor invites: opens invites
- Mess → Mess scan: opens scan
- Payments → Receipt: shows receipt
- Dashboard → API service: requests data
- Guests and invites → API service: requests data
- Mess → API service: requests data
- Payments → API service: requests data
- Notifications → API service: requests data
- Logs → API service: requests data
- Support → API service: requests data
- API service → API config: uses config
- API service → Domain models: uses models
- Android host → App entry: hosts Flutter
- iOS host → App entry: hosts Flutter
