# nazwaacamila6/bazent architecture

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

- Interactive diagram: https://gitdiagram.com/nazwaacamila6/bazent
- Repository: https://github.com/nazwaacamila6/bazent

## Overview

Bazent appears to be an Android event-management app with account, event creation and editing, event viewing, and profile screens, plus local Room storage and a Firebase messaging service. The tree identifies these product areas, but no README or application source was provided, so the user flow and component connections cannot be verified. Dashed, uncited edges mark only likely wiring; no build or test components are included.

Main entry points: [`app/src/main/java/com/example/bazent/ui/navigation/NavGraph.kt`](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/navigation/NavGraph.kt) (Navigation graph), [`app/src/main/java/com/example/bazent/MainActivity.kt`](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/MainActivity.kt) (Main activity), [`app/src/main/java/com/example/bazent/ui/screen/HomeScreen.kt`](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/HomeScreen.kt) (Home screen), [`app/src/main/java/com/example/bazent/ui/screen/CreateEventScreen.kt`](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/CreateEventScreen.kt) (Create event)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["Android app"]
  node_main["Main activity<br/>[MainActivity.kt]"]
  node_navigation["Navigation graph<br/>[NavGraph.kt]"]
end

subgraph group_events["Event workflows"]
  node_home["Home screen<br/>[HomeScreen.kt]"]
  node_homevm["Home state<br/>[HomeViewModel.kt]"]
  node_create["Create event"]
  node_createvm["Create state"]
  node_detail["Event details"]
  node_detailvm["Detail state"]
  node_viewevent["View event<br/>[ViewEventScreen.kt]"]
  node_viewvm["View state"]
  node_editevent["Edit event<br/>[EditEventScreen.kt]"]
  node_editeventvm["Edit state"]
  node_editdraft["Edit draft<br/>[EditDraftScreen.kt]"]
  node_draftvm["Draft state"]
end

subgraph group_accounts["Accounts and profile"]
  node_login["Login screen<br/>[LoginScreen.kt]"]
  node_loginvm["Login state<br/>[LoginViewModel.kt]"]
  node_register["Register screen<br/>[RegisterScreen.kt]"]
  node_registervm["Register state"]
  node_profile["Profile screen<br/>[ProfileScreen.kt]"]
  node_profilevm["Profile state"]
end

subgraph group_data["Local data and messaging"]
  node_database[("Room database<br/>[AppDatabase.kt]")]
  node_eventdao["Event access<br/>[EventDao.kt]"]
  node_evententity["Event records<br/>[EventEntity.kt]"]
  node_userdao["User access<br/>[UserDao.kt]"]
  node_userentity["User records<br/>[UserEntity.kt]"]
  node_converters["Room converters<br/>[Converters.kt]"]
  node_timestamp["Timestamp converter"]
  node_messaging["Push messaging"]
end

node_user(("App user"))

node_user -.->|"opens"| node_main
node_main -.->|"hosts"| node_navigation
node_navigation -.->|"routes to"| node_home
node_navigation -.->|"routes to"| node_create
node_navigation -.->|"routes to"| node_detail
node_navigation -.->|"routes to"| node_viewevent
node_navigation -.->|"routes to"| node_editevent
node_navigation -.->|"routes to"| node_editdraft
node_navigation -.->|"routes to"| node_login
node_navigation -.->|"routes to"| node_register
node_navigation -.->|"routes to"| node_profile
node_home -.->|"uses state"| node_homevm
node_create -.->|"uses state"| node_createvm
node_detail -.->|"uses state"| node_detailvm
node_viewevent -.->|"uses state"| node_viewvm
node_editevent -.->|"uses state"| node_editeventvm
node_editdraft -.->|"uses state"| node_draftvm
node_login -.->|"uses state"| node_loginvm
node_register -.->|"uses state"| node_registervm
node_profile -.->|"uses state"| node_profilevm

click node_main "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/MainActivity.kt"
click node_navigation "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/navigation/NavGraph.kt"
click node_home "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/HomeScreen.kt"
click node_homevm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/HomeViewModel.kt"
click node_create "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/CreateEventScreen.kt"
click node_createvm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/CreateEventViewModel.kt"
click node_detail "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/DetailEventScreen.kt"
click node_detailvm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/DetailEventViewModel.kt"
click node_viewevent "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/ViewEventScreen.kt"
click node_viewvm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/ViewEventViewModel.kt"
click node_editevent "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/EditEventScreen.kt"
click node_editeventvm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/EditEventViewModel.kt"
click node_editdraft "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/EditDraftScreen.kt"
click node_draftvm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/EditDraftViewModel.kt"
click node_login "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/LoginScreen.kt"
click node_loginvm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/LoginViewModel.kt"
click node_register "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/RegisterScreen.kt"
click node_registervm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/RegisterViewModel.kt"
click node_profile "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/ProfileScreen.kt"
click node_profilevm "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/ProfileViewModel.kt"
click node_database "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/AppDatabase.kt"
click node_eventdao "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/EventDao.kt"
click node_evententity "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/EventEntity.kt"
click node_userdao "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/UserDao.kt"
click node_userentity "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/UserEntity.kt"
click node_converters "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/Converters.kt"
click node_timestamp "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/TimestampConverter.kt"
click node_messaging "https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/notification/MyFirebaseMessagingService.kt"

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_navigation,node_user toneBlue
class node_home,node_homevm,node_create,node_createvm,node_detail,node_detailvm,node_viewevent,node_viewvm,node_editevent,node_editeventvm,node_editdraft,node_draftvm toneAmber
class node_login,node_loginvm,node_register,node_registervm,node_profile,node_profilevm toneMint
class node_database,node_eventdao,node_evententity,node_userdao,node_userentity,node_converters,node_timestamp,node_messaging toneRose
```

## Components

### Android app

- [Main activity](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/MainActivity.kt): `app/src/main/java/com/example/bazent/MainActivity.kt`
- [Navigation graph](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/navigation/NavGraph.kt): `app/src/main/java/com/example/bazent/ui/navigation/NavGraph.kt`

### Event workflows

- [Home screen](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/HomeScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/HomeScreen.kt`
- [Home state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/HomeViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/HomeViewModel.kt`
- [Create event](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/CreateEventScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/CreateEventScreen.kt`
- [Create state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/CreateEventViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/CreateEventViewModel.kt`
- [Event details](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/DetailEventScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/DetailEventScreen.kt`
- [Detail state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/DetailEventViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/DetailEventViewModel.kt`
- [View event](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/ViewEventScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/ViewEventScreen.kt`
- [View state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/ViewEventViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/ViewEventViewModel.kt`
- [Edit event](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/EditEventScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/EditEventScreen.kt`
- [Edit state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/EditEventViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/EditEventViewModel.kt`
- [Edit draft](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/EditDraftScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/EditDraftScreen.kt`
- [Draft state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/EditDraftViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/EditDraftViewModel.kt`

### Accounts and profile

- [Login screen](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/LoginScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/LoginScreen.kt`
- [Login state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/LoginViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/LoginViewModel.kt`
- [Register screen](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/RegisterScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/RegisterScreen.kt`
- [Register state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/RegisterViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/RegisterViewModel.kt`
- [Profile screen](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/ui/screen/ProfileScreen.kt): `app/src/main/java/com/example/bazent/ui/screen/ProfileScreen.kt`
- [Profile state](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/viewmodel/ProfileViewModel.kt): `app/src/main/java/com/example/bazent/viewmodel/ProfileViewModel.kt`

### Local data and messaging

- [Room database](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/AppDatabase.kt): `app/src/main/java/com/example/bazent/data/local/AppDatabase.kt`
- [Event access](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/EventDao.kt): `app/src/main/java/com/example/bazent/data/local/EventDao.kt`
- [Event records](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/EventEntity.kt): `app/src/main/java/com/example/bazent/data/local/EventEntity.kt`
- [User access](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/UserDao.kt): `app/src/main/java/com/example/bazent/data/local/UserDao.kt`
- [User records](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/UserEntity.kt): `app/src/main/java/com/example/bazent/data/local/UserEntity.kt`
- [Room converters](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/Converters.kt): `app/src/main/java/com/example/bazent/data/local/Converters.kt`
- [Timestamp converter](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/data/local/TimestampConverter.kt): `app/src/main/java/com/example/bazent/data/local/TimestampConverter.kt`
- [Push messaging](https://github.com/nazwaacamila6/bazent/blob/main/app/src/main/java/com/example/bazent/notification/MyFirebaseMessagingService.kt): `app/src/main/java/com/example/bazent/notification/MyFirebaseMessagingService.kt`

### Other components

- **App user**

## Connections

- App user → Main activity: opens
- Main activity → Navigation graph: hosts
- Navigation graph → Home screen: routes to
- Navigation graph → Create event: routes to
- Navigation graph → Event details: routes to
- Navigation graph → View event: routes to
- Navigation graph → Edit event: routes to
- Navigation graph → Edit draft: routes to
- Navigation graph → Login screen: routes to
- Navigation graph → Register screen: routes to
- Navigation graph → Profile screen: routes to
- Home screen → Home state: uses state
- Create event → Create state: uses state
- Event details → Detail state: uses state
- View event → View state: uses state
- Edit event → Edit state: uses state
- Edit draft → Draft state: uses state
- Login screen → Login state: uses state
- Register screen → Register state: uses state
- Profile screen → Profile state: uses state
