# flex68016-del/edupaie architecture

> Architecture diagram of the GitHub repository flex68016-del/edupaie, 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/flex68016-del/edupaie
- Repository: https://github.com/flex68016-del/edupaie

## Overview

EduPaie vise la gestion scolaire des élèves, classes et paiements, avec suivi des soldes et reçus. Le parcours prévu passe par une interface PySide6, des services métier puis des repositories SQLite. Toutefois, l’entrée actuelle affiche seulement un message : les packages UI et services ne contiennent que leur description, et aucun parcours utilisateur fonctionnel n’est câblé. Le graphe distingue donc les accès aux données réellement décrits des capacités annoncées mais non implémentées; les modules non échantillonnés ne permettent pas d’affirmer davantage de liaisons.

Main entry points: [`data/database.py`](https://github.com/flex68016-del/edupaie/blob/main/data/database.py) (Connexion et transactions), [`main.py`](https://github.com/flex68016-del/edupaie/blob/main/main.py) (Entrée console), [`data/student_repository.py`](https://github.com/flex68016-del/edupaie/blob/main/data/student_repository.py) (Élèves et classes), [`data/payment_repository.py`](https://github.com/flex68016-del/edupaie/blob/main/data/payment_repository.py) (Paiements et reçus)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interface["Interface prévue"]
  node_ui["Écrans scolaires"]
end

subgraph group_metier["Domaine prévu"]
  node_services["Règles métier"]
  node_receipts["Reçus PDF annoncés"]
end

subgraph group_donnees["Accès aux données"]
  node_students["Élèves et classes"]
  node_payments["Paiements et reçus"]
  node_database["Connexion et transactions<br/>[database.py]"]
  node_schema["Schéma relationnel<br/>[schema.sql]"]
end

node_user(("Utilisateur"))
node_main["Entrée console<br/>[main.py]"]
node_sqlite[("Base SQLite")]

node_user -->|"lance"| node_main
node_main -->|"affiche message"| node_user
node_students -->|"ouvre transactions"| node_database
node_payments -->|"ouvre transactions"| node_database
node_database -->|"lit et écrit"| node_sqlite
node_database -->|"lit à l’initialisation"| node_schema

click node_main "https://github.com/flex68016-del/edupaie/blob/main/main.py"
click node_ui "https://github.com/flex68016-del/edupaie/tree/main/ui"
click node_services "https://github.com/flex68016-del/edupaie/tree/main/services"
click node_students "https://github.com/flex68016-del/edupaie/blob/main/data/student_repository.py"
click node_payments "https://github.com/flex68016-del/edupaie/blob/main/data/payment_repository.py"
click node_database "https://github.com/flex68016-del/edupaie/blob/main/data/database.py"
click node_schema "https://github.com/flex68016-del/edupaie/blob/main/db/schema.sql"
click node_receipts "https://github.com/flex68016-del/edupaie/tree/main/services"

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_ui toneBlue
class node_services,node_receipts,node_sqlite toneAmber
class node_students,node_payments,node_database,node_schema toneMint
class node_user toneIndigo
class node_main toneTeal
```

## Components

### Interface prévue

- [Écrans scolaires](https://github.com/flex68016-del/edupaie/tree/main/ui): `ui`

### Domaine prévu

- [Règles métier](https://github.com/flex68016-del/edupaie/tree/main/services): `services`
- [Reçus PDF annoncés](https://github.com/flex68016-del/edupaie/tree/main/services): `services`

### Accès aux données

- [Élèves et classes](https://github.com/flex68016-del/edupaie/blob/main/data/student_repository.py): `data/student_repository.py`
- [Paiements et reçus](https://github.com/flex68016-del/edupaie/blob/main/data/payment_repository.py): `data/payment_repository.py`
- [Connexion et transactions](https://github.com/flex68016-del/edupaie/blob/main/data/database.py): `data/database.py`
- [Schéma relationnel](https://github.com/flex68016-del/edupaie/blob/main/db/schema.sql): `db/schema.sql`

### Other components

- **Utilisateur**
- [Entrée console](https://github.com/flex68016-del/edupaie/blob/main/main.py): `main.py`
- **Base SQLite**

## Connections

- Utilisateur → Entrée console: lance
- Entrée console → Utilisateur: affiche message
- Élèves et classes → Connexion et transactions: ouvre transactions
- Paiements et reçus → Connexion et transactions: ouvre transactions
- Connexion et transactions → Base SQLite: lit et écrit
- Connexion et transactions → Schéma relationnel: lit à l’initialisation
