How kemalq/the-notes-app works
Notes App is a Spring Boot REST API for creating, listing, reading, updating, deleting, and computing statistics for notes stored in MongoDB. The documented user flow is an HTTP request to the notes API and, for creation, a response containing the new note’s ID and metadata. The tree identifies controller, service, DAO, mapping, and model layers, but source excerpts were unavailable, so their call relationships are not asserted.
Main entry points: NotesController.java Notes controller
Components 14
REST API
- Notes controller
src/main/java/com/example/notesApp/controller/NotesController.java - Request and response DTOs
src/main/java/com/example/notesApp/dto - Error handling
src/main/java/com/example/notesApp/exceptions - Spring Boot application
src/main/java/com/example/notesApp/NotesAppApplication.java
Notes Domain
- Note service
src/main/java/com/example/notesApp/service/NoteService.java - Note service implementation
src/main/java/com/example/notesApp/service/impl/NoteServiceImpl.java - Note statistics
src/main/java/com/example/notesApp/service/impl/NoteStatisticService.java - Note mapper
src/main/java/com/example/notesApp/mapper/NoteMapper.java - Note model
src/main/java/com/example/notesApp/model/Note.java - Note tags
src/main/java/com/example/notesApp/enums/Tags.java
Persistence
- Notes DAO
src/main/java/com/example/notesApp/dao/NotesDAO.java - MongoDB
- Mongo auditing config
src/main/java/com/example/notesApp/configuration/MongoAuditingConfig.java
Other components
- API client
Connections 1
- API client → Notes controller: sends API requests