# ricardoo-azevedo/edualerta architecture

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

- Interactive diagram: https://gitdiagram.com/ricardoo-azevedo/edualerta
- Repository: https://github.com/ricardoo-azevedo/edualerta

## Overview

EduAlerta is a web system for monitoring school attendance and identifying students at risk of dropping out. Its documented workflow is to manage students, classes, and enrollments; record weekly attendance by class; calculate semester absence rates; generate alerts; and record institutional interventions. The README also models notifications to guardians and possible referrals. The repository tree contains no application source files, so paths and implementation-level call relationships cannot be established; the graph reflects documented capabilities and data relationships only.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_school_setup["School setup"]
  node_student_class["Students and classes"]
  node_enrollment["Enrollments"]
  node_guardian["Guardians"]
end

subgraph group_attendance["Attendance monitoring"]
  node_weekly_close["Weekly attendance close"]
  node_weekly_detail["Daily and weekly records"]
  node_absence_rate["Semester absence rate"]
end

subgraph group_risk_response["Risk response"]
  node_alert["Risk alerts"]
  node_intervention["Interventions"]
  node_notification["Guardian notifications"]
  node_referral["Service referrals"]
end

subgraph group_platform["Platform services"]
  node_web_app["Web application"]
  node_database[("PostgreSQL database")]
  node_supabase_auth["Supabase Auth"]
end

node_school_staff(("School staff"))

node_school_staff -->|"uses"| node_web_app
node_web_app -->|"manages"| node_student_class
node_web_app -->|"manages"| node_enrollment
node_web_app -->|"records"| node_weekly_close
node_weekly_close -->|"contains"| node_weekly_detail
node_enrollment -->|"receives attendance"| node_weekly_detail
node_weekly_detail -->|"supports calculation"| node_absence_rate
node_absence_rate -->|"informs risk alerts"| node_alert
node_web_app -->|"records"| node_intervention
node_alert -->|"has follow-up"| node_intervention
node_alert -->|"generates"| node_notification
node_guardian -->|"receives"| node_notification
node_alert -->|"may generate"| node_referral
node_web_app -->|"uses"| node_database
node_web_app -->|"authenticates with"| node_supabase_auth

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_student_class,node_enrollment,node_guardian toneBlue
class node_weekly_close,node_weekly_detail,node_absence_rate toneAmber
class node_alert,node_intervention,node_notification,node_referral toneMint
class node_web_app,node_database,node_supabase_auth toneRose
class node_school_staff toneIndigo
```

## Components

### School setup

- **Students and classes**
- **Enrollments**
- **Guardians**

### Attendance monitoring

- **Weekly attendance close**
- **Daily and weekly records**
- **Semester absence rate**

### Risk response

- **Risk alerts**
- **Interventions**
- **Guardian notifications**
- **Service referrals**

### Platform services

- **Web application**
- **PostgreSQL database**
- **Supabase Auth**

### Other components

- **School staff**

## Connections

- School staff → Web application: uses (evidence: `README.md`)
- Web application → Students and classes: manages (evidence: `README.md`)
- Web application → Enrollments: manages (evidence: `README.md`)
- Web application → Weekly attendance close: records (evidence: `README.md`)
- Weekly attendance close → Daily and weekly records: contains (evidence: `README.md`)
- Enrollments → Daily and weekly records: receives attendance (evidence: `README.md`)
- Daily and weekly records → Semester absence rate: supports calculation (evidence: `README.md`)
- Semester absence rate → Risk alerts: informs risk alerts (evidence: `README.md`)
- Web application → Interventions: records (evidence: `README.md`)
- Risk alerts → Interventions: has follow-up (evidence: `README.md`)
- Risk alerts → Guardian notifications: generates (evidence: `README.md`)
- Guardians → Guardian notifications: receives (evidence: `README.md`)
- Risk alerts → Service referrals: may generate (evidence: `README.md`)
- Web application → PostgreSQL database: uses (evidence: `README.md`)
- Web application → Supabase Auth: authenticates with (evidence: `README.md`)
