How dexalium/task-manager works
This is a task-management web app: users sign in, then view tasks and users, create or edit tasks, change status, assign users, and delete tasks. The Next.js task page coordinates those actions through its task API helpers; FastAPI routes enforce JWT-protected access and use SQLAlchemy models backed by PostgreSQL. README-described features are included where their source was not sampled, using only paths present in the tree. Some frontend API wiring and the user-route implementation were not sampled, so their internal links are limited to documented behavior.
Main entry points: page.tsx Task workspace · main.py API app and routing · tasks.py Task endpoints · auth.py JWT and identity
Components 18
Next.js interface
- Login page
next-js-test/internship-test/app/login/page.tsx - Task workspace
next-js-test/internship-test/app/tasks/page.tsx - Task form
next-js-test/internship-test/components/TaskForm.tsx - Status display
next-js-test/internship-test/components/StatusPill.tsx - Auth guard
next-js-test/internship-test/lib/useAuthGuard.ts - Task API helpers
next-js-test/internship-test/lib/tasks.ts - HTTP client
next-js-test/internship-test/lib/api.ts - Client data types
next-js-test/internship-test/types/index.ts
FastAPI services
- API app and routing
backend/main.py - Login endpoint
backend/routers/auth_routes.py - Task endpoints
backend/routers/tasks.py - User endpoints
backend/routers/users.py - JWT and identity
backend/auth.py
Domain and persistence
- API schemas
backend/schemas.py - User and task models
backend/models.py - Database sessions
backend/database.py
Other components
- App user
- PostgreSQL
Connections 24
- App user → Login page: signs in
- App user → Task workspace: manages tasks
- Task workspace → Auth guard: checks session
- Auth guard → HTTP client: checks token
- Task workspace → Task form: renders form
- Task workspace → Status display: renders status
- Task workspace → Task API helpers: requests task actions
- Login page → HTTP client: submits login
- Task API helpers → HTTP client: sends requests
- HTTP client → API app and routing: calls API
- API app and routing → Login endpoint: registers routes
- API app and routing → Task endpoints: registers routes
- API app and routing → User endpoints: registers routes
- Login endpoint → JWT and identity: authenticates and issues token
- Task endpoints → JWT and identity: validates JWT
- User endpoints → JWT and identity: requires JWT
- JWT and identity → Database sessions: queries users
- Task endpoints → Database sessions: uses session
- User endpoints → Database sessions: uses session
- Database sessions → PostgreSQL: reads and writes
- Task endpoints → User and task models: queries task models
- JWT and identity → User and task models: queries user model
- Task endpoints → API schemas: validates task data
- API app and routing → Database sessions: creates schema tables