# biondi06/projeto_politicas_seguranca architecture

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

- Interactive diagram: https://gitdiagram.com/biondi06/projeto_politicas_seguranca
- Repository: https://github.com/biondi06/projeto_politicas_seguranca

## Overview

Ecoa is a Laravel system for coordinating pediatric speech-therapy care. Its documented workflow is professionals managing a child’s therapeutic plan and exercises, then recording and reviewing speech progress; the README also identifies collaborative plans and a clinical coordinator panel. The tree supports those domain areas, but route and most controller implementations were not sampled, so detailed call wiring is uncertain. The sampled code confirms consent-data operations and audit-log queries; broader model persistence reflects the MVC structure, not inspected per-controller calls.

Main entry points: [`routes/web.php`](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/routes/web.php) (Web routes), [`config/database.php`](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/config/database.php) (Configured database), [`public/index.php`](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/public/index.php) (HTTP entry), [`app/Http/Controllers/AuditoriaController.php`](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/AuditoriaController.php) (Audit review)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Web entry"]
  node_web["HTTP entry<br/>[index.php]"]
  node_routes["Web routes<br/>[web.php]"]
end

subgraph group_care["Therapy workflow"]
  node_children["Children"]
  node_child_records["Child records<br/>[Crianca.php]"]
  node_plans["Therapeutic plans"]
  node_plan_records["Plan records"]
  node_collaboration["Plan comments"]
  node_comment_records["Comment records"]
  node_exercises["Exercise library"]
  node_exercise_records["Exercise records<br/>[Exercicio.php]"]
  node_plan_exercises["Plan exercises"]
  node_plan_exercise_records["Plan exercise records<br/>[PlanoExercicio.php]"]
  node_progress["Speech progress"]
  node_progress_records["Progress records"]
  node_exercise_log["Exercise completion"]
  node_exercise_log_records["Completion records"]
end

subgraph group_oversight["Clinical oversight"]
  node_clinical_panel["Coordinator panel"]
  node_audit["Audit review"]
  node_audit_records["Audit logs<br/>[AuditoriaLog.php]"]
end

subgraph group_account["Accounts and privacy"]
  node_authentication["Authentication"]
  node_security["Security controls"]
  node_privacy["Privacy requests<br/>[LgpdController.php]"]
  node_consent_records["Consent records<br/>[Consentimento.php]"]
end

subgraph group_persistence["Persistence"]
  node_data_store[("Configured database<br/>[database.php]")]
end

node_professional(("Care professional"))
node_coordinator(("Clinical coordinator"))

node_professional -->|"submits requests"| node_web
node_coordinator -->|"submits requests"| node_web
node_web -->|"dispatches"| node_routes
node_routes -->|"routes requests"| node_children
node_routes -->|"routes requests"| node_plans
node_routes -->|"routes requests"| node_collaboration
node_routes -->|"routes requests"| node_exercises
node_routes -->|"routes requests"| node_plan_exercises
node_routes -->|"routes requests"| node_progress
node_routes -->|"routes requests"| node_exercise_log
node_routes -->|"routes requests"| node_clinical_panel
node_routes -->|"routes requests"| node_audit
node_routes -->|"routes requests"| node_authentication
node_routes -->|"routes requests"| node_security
node_routes -->|"routes requests"| node_privacy
node_children -->|"manages records"| node_child_records
node_plans -->|"manages records"| node_plan_records
node_collaboration -->|"manages records"| node_comment_records
node_exercises -->|"manages records"| node_exercise_records
node_plan_exercises -->|"manages records"| node_plan_exercise_records
node_progress -->|"manages records"| node_progress_records
node_exercise_log -->|"manages records"| node_exercise_log_records
node_clinical_panel -->|"offers access"| node_audit
node_audit -->|"queries logs"| node_audit_records
node_privacy -->|"queries and updates"| node_consent_records
node_child_records -->|"persists data"| node_data_store
node_plan_records -->|"persists data"| node_data_store
node_comment_records -->|"persists data"| node_data_store
node_exercise_records -->|"persists data"| node_data_store
node_plan_exercise_records -->|"persists data"| node_data_store
node_progress_records -->|"persists data"| node_data_store
node_exercise_log_records -->|"persists data"| node_data_store
node_audit_records -->|"persists data"| node_data_store
node_consent_records -->|"persists data"| node_data_store

click node_web "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/public/index.php"
click node_routes "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/routes/web.php"
click node_children "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/CriancaController.php"
click node_child_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/Crianca.php"
click node_plans "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/PlanoTerapeuticoController.php"
click node_plan_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/PlanoTerapeutico.php"
click node_collaboration "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/ComentarioPlanoController.php"
click node_comment_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/ComentarioPlano.php"
click node_exercises "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/ExercicioController.php"
click node_exercise_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/Exercicio.php"
click node_plan_exercises "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/PlanoExercicioController.php"
click node_plan_exercise_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/PlanoExercicio.php"
click node_progress "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/RegistroEvolucaoController.php"
click node_progress_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/RegistroEvolucao.php"
click node_exercise_log "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/RegistroExercicioRealizadoController.php"
click node_exercise_log_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/RegistroExercicioRealizado.php"
click node_clinical_panel "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/CoordenadorClinicoController.php"
click node_audit "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/AuditoriaController.php"
click node_audit_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/AuditoriaLog.php"
click node_authentication "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Providers/FortifyServiceProvider.php"
click node_security "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/SecurityController.php"
click node_privacy "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/LgpdController.php"
click node_consent_records "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/Consentimento.php"
click node_data_store "https://github.com/biondi06/projeto_politicas_seguranca/blob/main/config/database.php"

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_web,node_routes toneBlue
class node_children,node_child_records,node_plans,node_plan_records,node_collaboration,node_comment_records,node_exercises,node_exercise_records,node_plan_exercises,node_plan_exercise_records,node_progress,node_progress_records,node_exercise_log,node_exercise_log_records toneAmber
class node_clinical_panel,node_audit,node_audit_records toneMint
class node_authentication,node_security,node_privacy,node_consent_records toneRose
class node_data_store,node_professional,node_coordinator toneIndigo
```

## Components

### Web entry

- [HTTP entry](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/public/index.php): `public/index.php`
- [Web routes](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/routes/web.php): `routes/web.php`

### Therapy workflow

- [Children](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/CriancaController.php): `app/Http/Controllers/CriancaController.php`
- [Child records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/Crianca.php): `app/Models/Crianca.php`
- [Therapeutic plans](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/PlanoTerapeuticoController.php): `app/Http/Controllers/PlanoTerapeuticoController.php`
- [Plan records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/PlanoTerapeutico.php): `app/Models/PlanoTerapeutico.php`
- [Plan comments](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/ComentarioPlanoController.php): `app/Http/Controllers/ComentarioPlanoController.php`
- [Comment records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/ComentarioPlano.php): `app/Models/ComentarioPlano.php`
- [Exercise library](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/ExercicioController.php): `app/Http/Controllers/ExercicioController.php`
- [Exercise records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/Exercicio.php): `app/Models/Exercicio.php`
- [Plan exercises](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/PlanoExercicioController.php): `app/Http/Controllers/PlanoExercicioController.php`
- [Plan exercise records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/PlanoExercicio.php): `app/Models/PlanoExercicio.php`
- [Speech progress](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/RegistroEvolucaoController.php): `app/Http/Controllers/RegistroEvolucaoController.php`
- [Progress records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/RegistroEvolucao.php): `app/Models/RegistroEvolucao.php`
- [Exercise completion](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/RegistroExercicioRealizadoController.php): `app/Http/Controllers/RegistroExercicioRealizadoController.php`
- [Completion records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/RegistroExercicioRealizado.php): `app/Models/RegistroExercicioRealizado.php`

### Clinical oversight

- [Coordinator panel](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/CoordenadorClinicoController.php): `app/Http/Controllers/CoordenadorClinicoController.php`
- [Audit review](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/AuditoriaController.php): `app/Http/Controllers/AuditoriaController.php`
- [Audit logs](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/AuditoriaLog.php): `app/Models/AuditoriaLog.php`

### Accounts and privacy

- [Authentication](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Providers/FortifyServiceProvider.php): `app/Providers/FortifyServiceProvider.php`
- [Security controls](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/SecurityController.php): `app/Http/Controllers/SecurityController.php`
- [Privacy requests](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Http/Controllers/LgpdController.php): `app/Http/Controllers/LgpdController.php`
- [Consent records](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/app/Models/Consentimento.php): `app/Models/Consentimento.php`

### Persistence

- [Configured database](https://github.com/biondi06/projeto_politicas_seguranca/blob/main/config/database.php): `config/database.php`

### Other components

- **Care professional**
- **Clinical coordinator**

## Connections

- Care professional → HTTP entry: submits requests
- Clinical coordinator → HTTP entry: submits requests
- HTTP entry → Web routes: dispatches
- Web routes → Children: routes requests
- Web routes → Therapeutic plans: routes requests
- Web routes → Plan comments: routes requests
- Web routes → Exercise library: routes requests
- Web routes → Plan exercises: routes requests
- Web routes → Speech progress: routes requests
- Web routes → Exercise completion: routes requests
- Web routes → Coordinator panel: routes requests
- Web routes → Audit review: routes requests
- Web routes → Authentication: routes requests
- Web routes → Security controls: routes requests
- Web routes → Privacy requests: routes requests
- Children → Child records: manages records
- Therapeutic plans → Plan records: manages records
- Plan comments → Comment records: manages records
- Exercise library → Exercise records: manages records
- Plan exercises → Plan exercise records: manages records
- Speech progress → Progress records: manages records
- Exercise completion → Completion records: manages records
- Coordinator panel → Audit review: offers access
- Audit review → Audit logs: queries logs
- Privacy requests → Consent records: queries and updates
- Child records → Configured database: persists data
- Plan records → Configured database: persists data
- Comment records → Configured database: persists data
- Exercise records → Configured database: persists data
- Plan exercise records → Configured database: persists data
- Progress records → Configured database: persists data
- Completion records → Configured database: persists data
- Audit logs → Configured database: persists data
- Consent records → Configured database: persists data
