How anufrievalex2006/my-notes-app works
This is a full-stack notes application: users register or log in, create and manage notes, browse public or shared notes, and grant or revoke access; they can also update their profiles. The frontend routes and feature modules lead into entity data hooks and API clients, while the Spring backend exposes controllers, applies service-layer rules, and persists through repositories. The sampled source confirms note, authentication, profile, and access-management behavior; some frontend API-to-backend wiring and unsampled controller/service details are inferred only from the module structure, so uncertain internal links are omitted.
Main entry points: axiosInstance.ts HTTP client · widgets Page widgets · repos Data repositories · AuthService.java Authentication service
Components 25
Frontend experience
- App routes
frontend/src/app - Page views
frontend/src/views - Page widgets
frontend/src/widgets - Auth features
frontend/src/features/auth-login - Note features
frontend/src/features/note-create - Profile features
frontend/src/features/user-update
Frontend data
- Query provider
frontend/src/shared/providers/QueryProvider.tsx - Note data hooks
frontend/src/entities/note/model - User data hooks
frontend/src/entities/user/model - Note API clients
frontend/src/entities/note/api - User API clients
frontend/src/entities/user/api - HTTP client
frontend/src/shared/api/axiosInstance.ts
Backend application
- Auth controller
backend/src/main/java/com/notesapp/backend/controllers/AuthController.java - Note controller
backend/src/main/java/com/notesapp/backend/controllers/NoteController.java - Access controller
backend/src/main/java/com/notesapp/backend/controllers/NoteAccessController.java - User controller
backend/src/main/java/com/notesapp/backend/controllers/UserController.java - Authentication service
backend/src/main/java/com/notesapp/backend/services/AuthService.java - Note service
backend/src/main/java/com/notesapp/backend/services/NoteService.java - Access service
backend/src/main/java/com/notesapp/backend/services/NoteAccessService.java - User service
backend/src/main/java/com/notesapp/backend/services/UserService.java
Backend state and security
- JWT service
backend/src/main/java/com/notesapp/backend/security/JwtService.java - JWT filter
backend/src/main/java/com/notesapp/backend/security/JwtAuthFilter.java - Data repositories
backend/src/main/java/com/notesapp/backend/repos - Application database
Other components
- User
Connections 27
- User → App routes: uses
- App routes → Page views: renders
- Page views → Page widgets: composes
- Page widgets → Note data hooks: loads notes
- Page widgets → Auth features: offers auth
- Page widgets → Note features: offers editing
- Page widgets → Profile features: offers profile
- Query provider → Note data hooks: provides queries
- Note data hooks → Note API clients: requests notes
- User data hooks → User API clients: requests users
- Note API clients → HTTP client: sends requests
- User API clients → HTTP client: sends requests
- HTTP client → Auth controller: HTTP API
- HTTP client → Note controller: HTTP API
- HTTP client → Access controller: HTTP API
- HTTP client → User controller: HTTP API
- Auth controller → Authentication service: delegates auth
- Note controller → Note service: delegates notes
- Access controller → Access service: delegates access
- User controller → User service: delegates users
- Authentication service → Data repositories: reads and writes
- Authentication service → JWT service: generates token
- Note service → Data repositories: reads and writes
- Access service → Data repositories: reads and writes
- User service → Data repositories: reads and writes
- JWT filter → JWT service: validates token
- Data repositories → Application database: persists data