How rrshafikov/notes-rest-api works
This Django application serves a browser-based notes editor and a REST API. The main workflow is user registration and email confirmation, authentication, then creating, opening, editing, and deleting owner-scoped notes; the web editor autosaves changes through the API. The README also documents profile management and OpenAPI/Swagger. Some URL and model implementations were not sampled, so the graph follows documented routing and capabilities where source excerpts are incomplete; no CI, build, or test components are included.
Main entry points: api/urls.py API router · authorization/views.py Auth handlers · notes/views.py Notes handlers · config/urls.py Application routes
Components 22
Web experience
- Web routes
src/authorization/urls.py - Auth pages
src/templates/auth - Auth interactions
src/static/js/auth.js - Notes page
src/templates/notes/index.html - Notes editor
src/static/js/notes.js
Identity
- Auth API routes
src/api/urls.py - Auth handlers
src/authorization/views.py - Auth serializers
src/authorization/serializers.py - User and codes
src/authorization/models.py
Notes
- Notes routes
src/notes/urls.py - Notes handlers
src/notes/views.py - Owner permissions
src/notes/permissions.py - Note serialization
src/notes/serializers.py - Note model
src/notes/models.py
API surface
- JWT endpoints
src/api/views.py - API router
src/api/urls.py - Application routes
src/config/urls.py - OpenAPI docs
src/api/urls.py
Other components
- Browser user
- API client
- SQLite database
src/config/settings.py - Email code files
Connections 24
- Browser user → Application routes: requests pages
- Application routes → Web routes: dispatches
- Web routes → Auth pages: renders
- Web routes → Notes page: serves notes
- Auth pages → Auth interactions: loads script
- Notes page → Notes editor: loads script
- Auth interactions → Auth API routes: submits auth
- Auth interactions → JWT endpoints: requests tokens
- API client → Application routes: requests API
- Application routes → API router: dispatches API
- API router → Auth handlers: dispatches auth
- API router → JWT endpoints: dispatches JWT
- API router → Notes routes: routes notes
- Notes routes → Notes handlers: dispatches
- Notes editor → API router: sends CRUD requests
- Notes handlers → Owner permissions: checks ownership
- Notes handlers → Note serialization: serializes notes
- Notes handlers → Note model: queries and saves
- Note model → SQLite database: persists notes
- Auth handlers → Auth serializers: validates input
- Auth handlers → User and codes: reads and writes
- User and codes → SQLite database: persists identity
- Auth handlers → Email code files: writes codes
- API router → OpenAPI docs: serves schema and docs