# fbkfriend/book-slot architecture

> Architecture diagram of the GitHub repository fbkfriend/book-slot, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/fbkfriend/book-slot
- Repository: https://github.com/fbkfriend/book-slot

## Overview

The tree indicates a Flutter app named bookslot, but the README is only a Flutter starter template and no Dart sources were excerpted. The map therefore identifies the app’s visible entry point, screens, services, and models without asserting an unverified user flow or inter-module calls. The only sampled implementation is the Android FlutterActivity host; Dart wiring and feature behavior remain unverified.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["App shell"]
  node_entry["App entry<br/>[main.dart]"]
  node_app_info["App info<br/>[app_info.dart]"]
  node_android_host["Android host<br/>[MainActivity.kt]"]
end

subgraph group_access["Access screens"]
  node_auth_gate["Auth gate<br/>[auth_gate.dart]"]
  node_account_gate["Account gate<br/>[account_gate.dart]"]
  node_login["Login screen<br/>[login_screen.dart]"]
  node_splash["Splash screen<br/>[splash_screen.dart]"]
  node_auth_service["Auth service<br/>[auth_service.dart]"]
end

subgraph group_admin["Administration"]
  node_librarian["Librarian shell"]
  node_superadmin["Superadmin shell"]
  node_dashboard["Dashboard tab<br/>[dashboard_tab.dart]"]
  node_users["Users tab<br/>[users_tab.dart]"]
  node_user_detail["User detail"]
  node_user_forms["User forms<br/>[user_forms.dart]"]
  node_settings_tab["Settings tab<br/>[settings_tab.dart]"]
  node_user_service["User service<br/>[user_service.dart]"]
  node_settings_service["Settings service"]
  node_app_user["App user model<br/>[app_user.dart]"]
  node_system_settings["System settings model"]
end

click node_entry "https://github.com/fbkfriend/book-slot/blob/main/lib/main.dart"
click node_app_info "https://github.com/fbkfriend/book-slot/blob/main/lib/app_info.dart"
click node_android_host "https://github.com/fbkfriend/book-slot/blob/main/android/app/src/main/kotlin/com/denmark/bookslot/MainActivity.kt"
click node_auth_gate "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/auth_gate.dart"
click node_account_gate "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/account_gate.dart"
click node_login "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/login_screen.dart"
click node_splash "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/splash_screen.dart"
click node_auth_service "https://github.com/fbkfriend/book-slot/blob/main/lib/services/auth_service.dart"
click node_librarian "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/librarian/librarian_shell.dart"
click node_superadmin "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/superadmin_shell.dart"
click node_dashboard "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/dashboard_tab.dart"
click node_users "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/users_tab.dart"
click node_user_detail "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/user_detail_screen.dart"
click node_user_forms "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/user_forms.dart"
click node_settings_tab "https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/settings_tab.dart"
click node_user_service "https://github.com/fbkfriend/book-slot/blob/main/lib/services/user_service.dart"
click node_settings_service "https://github.com/fbkfriend/book-slot/blob/main/lib/services/settings_service.dart"
click node_app_user "https://github.com/fbkfriend/book-slot/blob/main/lib/models/app_user.dart"
click node_system_settings "https://github.com/fbkfriend/book-slot/blob/main/lib/models/system_settings.dart"

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_entry,node_app_info,node_android_host toneBlue
class node_auth_gate,node_account_gate,node_login,node_splash,node_auth_service toneAmber
class node_librarian,node_superadmin,node_dashboard,node_users,node_user_detail,node_user_forms,node_settings_tab,node_user_service,node_settings_service,node_app_user,node_system_settings toneMint
```

## Components

### App shell

- [App entry](https://github.com/fbkfriend/book-slot/blob/main/lib/main.dart): `lib/main.dart`
- [App info](https://github.com/fbkfriend/book-slot/blob/main/lib/app_info.dart): `lib/app_info.dart`
- [Android host](https://github.com/fbkfriend/book-slot/blob/main/android/app/src/main/kotlin/com/denmark/bookslot/MainActivity.kt): `android/app/src/main/kotlin/com/denmark/bookslot/MainActivity.kt`

### Access screens

- [Auth gate](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/auth_gate.dart): `lib/screens/auth_gate.dart`
- [Account gate](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/account_gate.dart): `lib/screens/account_gate.dart`
- [Login screen](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/login_screen.dart): `lib/screens/login_screen.dart`
- [Splash screen](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/splash_screen.dart): `lib/screens/splash_screen.dart`
- [Auth service](https://github.com/fbkfriend/book-slot/blob/main/lib/services/auth_service.dart): `lib/services/auth_service.dart`

### Administration

- [Librarian shell](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/librarian/librarian_shell.dart): `lib/screens/librarian/librarian_shell.dart`
- [Superadmin shell](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/superadmin_shell.dart): `lib/screens/superadmin/superadmin_shell.dart`
- [Dashboard tab](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/dashboard_tab.dart): `lib/screens/superadmin/dashboard_tab.dart`
- [Users tab](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/users_tab.dart): `lib/screens/superadmin/users_tab.dart`
- [User detail](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/user_detail_screen.dart): `lib/screens/superadmin/user_detail_screen.dart`
- [User forms](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/user_forms.dart): `lib/screens/superadmin/user_forms.dart`
- [Settings tab](https://github.com/fbkfriend/book-slot/blob/main/lib/screens/superadmin/settings_tab.dart): `lib/screens/superadmin/settings_tab.dart`
- [User service](https://github.com/fbkfriend/book-slot/blob/main/lib/services/user_service.dart): `lib/services/user_service.dart`
- [Settings service](https://github.com/fbkfriend/book-slot/blob/main/lib/services/settings_service.dart): `lib/services/settings_service.dart`
- [App user model](https://github.com/fbkfriend/book-slot/blob/main/lib/models/app_user.dart): `lib/models/app_user.dart`
- [System settings model](https://github.com/fbkfriend/book-slot/blob/main/lib/models/system_settings.dart): `lib/models/system_settings.dart`
