How shashankshekhar05/zorvyn_assignment works
Finance Dashboard is a FastAPI backend for recording income and expenses, managing user access, and presenting financial summaries. The principal workflow is an authenticated client request entering the API, passing through route and service logic, and reading or changing financial records in the database; admin-only routes govern record changes. Authentication covers registration and token issuance, while the dashboard service computes summaries, category totals, and time trends. The README is empty and several route/dependency modules were not sampled, so their internal wiring is not asserted.
Components 18
API surface
- FastAPI app
- Request dependencies
Identity and access
- Auth routes
- User routes
- User service
- Token security
- User model
- User schemas
Financial records
- Transaction routes
- Transaction service
- Dashboard routes
- Dashboard analytics
- Financial records
- Transaction schemas
- Dashboard schemas
Persistence
- Async database
- SQL database
Other components
- API client
Connections 14
- API client → FastAPI app: sends requests
- FastAPI app → Auth routes: dispatches auth
- FastAPI app → User routes: dispatches users
- FastAPI app → Transaction routes: dispatches records
- FastAPI app → Dashboard routes: dispatches dashboard
- Auth routes → User service: authenticates users
- Auth routes → Token security: issues tokens
- User service → Token security: hashes passwords
- User service → Async database: queries users
- Transaction routes → Transaction service: handles records
- Transaction service → Async database: queries records
- Dashboard analytics → Async database: reads records
- Async database → SQL database: persists data
- FastAPI app → Async database: creates tables