How lea-machado/anotaai works
AnotaAI is a student note-taking web app. The implemented workflow is to create, browse, edit, and delete notes, with saved original-content versions and a dashboard of note and character metrics. The browser UI communicates with Spring REST endpoints, whose services apply validation and business logic over JPA repositories and PostgreSQL. Although the README describes AI-generated study aids as a goal and lists Gemini, the supplied source does not establish an implemented AI workflow, so it is not mapped. Frontend request wiring is inferred from the editor source and documented API use; other unsampled links are omitted.
Main entry points: AnotacaoService.java Note workflow · api.js API client · AnotacaoController.java Notes endpoints · DesempenhoController.java Metrics endpoint
Components 18
Student interface
- Note pages
AnotaAI/src/main/resources/static/pages/anotacoes.html - Editor page
AnotaAI/src/main/resources/static/pages/nova-anotacao.html - Metrics page
AnotaAI/src/main/resources/static/pages/desempenho.html - Notes UI
AnotaAI/src/main/resources/static/js/anotacoes.js - Editor UI
AnotaAI/src/main/resources/static/js/editor.js - Metrics UI
AnotaAI/src/main/resources/static/js/desempenho.js - API client
AnotaAI/src/main/resources/static/js/api.js
REST API
- Notes endpoints
AnotaAI/src/main/java/br/com/anotaai/controller/AnotacaoController.java - Metrics endpoint
AnotaAI/src/main/java/br/com/anotaai/controller/DesempenhoController.java - API errors
AnotaAI/src/main/java/br/com/anotaai/controller/ApiExceptionHandler.java
Note services
- Note workflow
AnotaAI/src/main/java/br/com/anotaai/service/AnotacaoService.java - Metric calculation
AnotaAI/src/main/java/br/com/anotaai/service/DesempenhoService.java - Note entity
AnotaAI/src/main/java/br/com/anotaai/model/Anotacao.java - Version entity
AnotaAI/src/main/java/br/com/anotaai/model/VersaoAnotacao.java
Persistence
- Note repository
AnotaAI/src/main/java/br/com/anotaai/repository/AnotacaoRepository.java - Version repository
AnotaAI/src/main/java/br/com/anotaai/repository/VersaoAnotacaoRepository.java - PostgreSQL
Other components
- Student
Connections 20
- Student → Note pages: uses
- Student → Editor page: uses
- Student → Metrics page: uses
- Notes UI → API client: requests
- Editor UI → API client: requests
- Metrics UI → API client: requests
- API client → Notes endpoints: HTTP calls
- API client → Metrics endpoint: HTTP calls
- Notes endpoints → Note workflow: dispatches
- Metrics endpoint → Metric calculation: dispatches
- Note workflow → Note repository: reads/writes
- Note workflow → Version repository: stores/reads versions
- Metric calculation → Note repository: reads
- Note workflow → Note entity: validates/updates
- Note workflow → Version entity: creates versions
- Metric calculation → Note entity: counts content
- Note repository → PostgreSQL: persists notes
- Version repository → PostgreSQL: persists versions
- Notes endpoints → API errors: exceptions handled
- Metrics endpoint → API errors: exceptions handled