# bohmide/app-star architecture

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

- Interactive diagram: https://gitdiagram.com/bohmide/app-star
- Repository: https://github.com/bohmide/app-star

## Overview

This is a Flutter mobile app whose filenames indicate client, expert, and administrator workflows around expert selection, assessment requests, appointments, invoices, messaging, and notifications. The README provides no product detail, and the sampled source contains no Dart implementation, so the workflow and Firebase-backed service roles are inferred from the tree; internal routing and service call relationships cannot be verified.

Main entry points: [`lib/main.dart`](https://github.com/bohmide/app-star/blob/main/lib/main.dart) (Flutter app)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access and roles"]
  node_app["Flutter app<br/>[main.dart]"]
  node_login["Login and auth"]
  node_signup["Sign up<br/>[SignUp.dart]"]
  node_client["Client screens"]
  node_expert["Expert screens"]
  node_admin["Admin screens"]
end

subgraph group_casework["Expert and casework"]
  node_expertlist["Expert directory<br/>[ListExpert.dart]"]
  node_request["Assessment request<br/>[Constat.dart]"]
  node_requestprofile["Request details"]
  node_appointment["Appointments"]
  node_invoice["Invoices<br/>[Facture_Page.dart]"]
end

subgraph group_engagement["User engagement"]
  node_messaging["Messaging"]
  node_notifications["Notifications"]
  node_profile["Profile and settings<br/>[Profile.dart]"]
end

subgraph group_backend["Data services"]
  node_authservice["Authentication service"]
  node_constatservice["Assessment service"]
  node_appointmentservice["Appointment service"]
  node_factureservice["Invoice service"]
  node_messageservice["Message service"]
  node_notificationservice["Notification service"]
end

node_user(("App user"))
node_firestore[("Cloud Firestore")]

node_user -->|"opens"| node_app

click node_app "https://github.com/bohmide/app-star/blob/main/lib/main.dart"
click node_login "https://github.com/bohmide/app-star/tree/main/lib/screens/Login"
click node_signup "https://github.com/bohmide/app-star/blob/main/lib/screens/Sign%20up/SignUp.dart"
click node_client "https://github.com/bohmide/app-star/tree/main/lib/screens/Client"
click node_expert "https://github.com/bohmide/app-star/tree/main/lib/screens/Expert"
click node_admin "https://github.com/bohmide/app-star/tree/main/lib/screens/Admin"
click node_expertlist "https://github.com/bohmide/app-star/blob/main/lib/screens/ListExpert.dart"
click node_request "https://github.com/bohmide/app-star/blob/main/lib/screens/Constat.dart"
click node_requestprofile "https://github.com/bohmide/app-star/blob/main/lib/screens/Profile_Demande_Constat.dart"
click node_appointment "https://github.com/bohmide/app-star/blob/main/lib/screens/Appointment_Page.dart"
click node_invoice "https://github.com/bohmide/app-star/blob/main/lib/screens/Facture_Page.dart"
click node_messaging "https://github.com/bohmide/app-star/blob/main/lib/screens/discussion_Page.dart"
click node_notifications "https://github.com/bohmide/app-star/blob/main/lib/screens/Notification_Page.dart"
click node_profile "https://github.com/bohmide/app-star/blob/main/lib/screens/profile/Profile.dart"
click node_authservice "https://github.com/bohmide/app-star/blob/main/lib/services/Authentification_FirestoreServicr.dart"
click node_constatservice "https://github.com/bohmide/app-star/blob/main/lib/services/Constat_FirestoreService.dart"
click node_appointmentservice "https://github.com/bohmide/app-star/blob/main/lib/services/Appointment_FirestoreService.dart"
click node_factureservice "https://github.com/bohmide/app-star/blob/main/lib/services/Facture_FirestoreService.dart"
click node_messageservice "https://github.com/bohmide/app-star/blob/main/lib/services/Message_FirestoreService.dart"
click node_notificationservice "https://github.com/bohmide/app-star/blob/main/lib/services/Notification_FirestoreService.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_app,node_login,node_signup,node_client,node_expert,node_admin,node_user toneBlue
class node_expertlist,node_request,node_requestprofile,node_appointment,node_invoice,node_firestore toneAmber
class node_messaging,node_notifications,node_profile toneMint
class node_authservice,node_constatservice,node_appointmentservice,node_factureservice,node_messageservice,node_notificationservice toneRose
```

## Components

### Access and roles

- [Flutter app](https://github.com/bohmide/app-star/blob/main/lib/main.dart): `lib/main.dart`
- [Login and auth](https://github.com/bohmide/app-star/tree/main/lib/screens/Login): `lib/screens/Login`
- [Sign up](https://github.com/bohmide/app-star/blob/main/lib/screens/Sign%20up/SignUp.dart): `lib/screens/Sign up/SignUp.dart`
- [Client screens](https://github.com/bohmide/app-star/tree/main/lib/screens/Client): `lib/screens/Client`
- [Expert screens](https://github.com/bohmide/app-star/tree/main/lib/screens/Expert): `lib/screens/Expert`
- [Admin screens](https://github.com/bohmide/app-star/tree/main/lib/screens/Admin): `lib/screens/Admin`

### Expert and casework

- [Expert directory](https://github.com/bohmide/app-star/blob/main/lib/screens/ListExpert.dart): `lib/screens/ListExpert.dart`
- [Assessment request](https://github.com/bohmide/app-star/blob/main/lib/screens/Constat.dart): `lib/screens/Constat.dart`
- [Request details](https://github.com/bohmide/app-star/blob/main/lib/screens/Profile_Demande_Constat.dart): `lib/screens/Profile_Demande_Constat.dart`
- [Appointments](https://github.com/bohmide/app-star/blob/main/lib/screens/Appointment_Page.dart): `lib/screens/Appointment_Page.dart`
- [Invoices](https://github.com/bohmide/app-star/blob/main/lib/screens/Facture_Page.dart): `lib/screens/Facture_Page.dart`

### User engagement

- [Messaging](https://github.com/bohmide/app-star/blob/main/lib/screens/discussion_Page.dart): `lib/screens/discussion_Page.dart`
- [Notifications](https://github.com/bohmide/app-star/blob/main/lib/screens/Notification_Page.dart): `lib/screens/Notification_Page.dart`
- [Profile and settings](https://github.com/bohmide/app-star/blob/main/lib/screens/profile/Profile.dart): `lib/screens/profile/Profile.dart`

### Data services

- [Authentication service](https://github.com/bohmide/app-star/blob/main/lib/services/Authentification_FirestoreServicr.dart): `lib/services/Authentification_FirestoreServicr.dart`
- [Assessment service](https://github.com/bohmide/app-star/blob/main/lib/services/Constat_FirestoreService.dart): `lib/services/Constat_FirestoreService.dart`
- [Appointment service](https://github.com/bohmide/app-star/blob/main/lib/services/Appointment_FirestoreService.dart): `lib/services/Appointment_FirestoreService.dart`
- [Invoice service](https://github.com/bohmide/app-star/blob/main/lib/services/Facture_FirestoreService.dart): `lib/services/Facture_FirestoreService.dart`
- [Message service](https://github.com/bohmide/app-star/blob/main/lib/services/Message_FirestoreService.dart): `lib/services/Message_FirestoreService.dart`
- [Notification service](https://github.com/bohmide/app-star/blob/main/lib/services/Notification_FirestoreService.dart): `lib/services/Notification_FirestoreService.dart`

### Other components

- **App user**
- **Cloud Firestore**

## Connections

- App user → Flutter app: opens
