How purnatejeshwarareddyb/infradesk works
InfraDesk is a local-first IT asset and support-ticket application for administrators and workers. Users sign in, manage or report tickets, collaborate through assignments and comments, and follow resolution; administrators also manage assets and users and review reports and activity. The React client routes role-specific pages through a shared API client to the FastAPI service, which applies business rules and stores application state in SQLite. The tree supplied does not include the separately documented DevOps tooling. Some API-to-service wiring is unsampled, so those links are omitted.
Main entry points: App.tsx Application routes · main.py FastAPI entry · ticket_service.py Ticket rules · auth_service.py Credential checks
Components 24
Web client
- Application routes
frontend/src/App.tsx - Sign-in
frontend/src/pages/Login.tsx - Ticket workspace
frontend/src/pages/shared/TicketList.tsx - Ticket collaboration
frontend/src/pages/shared/TicketDetail.tsx - Admin tools
frontend/src/pages/admin/Users.tsx - HTTP client
frontend/src/api/client.ts - API operations
frontend/src/api/endpoints.ts - Session state
frontend/src/auth/AuthProvider.tsx
API boundary
- FastAPI entry
backend/app/main.py - Versioned API routes
backend/app/api/v1/router.py - Authentication route
backend/app/api/v1/auth.py - API error handling
backend/app/core/exceptions.py - Health endpoint
backend/app/api/v1/health.py
Support workflows
- Ticket rules
backend/app/services/ticket_service.py - Asset management
backend/app/services/asset_service.py - User management
backend/app/services/user_service.py - Reporting
backend/app/services/report_service.py - Audit history
backend/app/services/audit_service.py - Notifications
backend/app/services/notification_service.py - Credential checks
backend/app/services/auth_service.py
Domain data
- Domain records
backend/app/models/ticket.py - User records
backend/app/models/user.py - Local SQLite
backend/app/db/session.py
Other components
- Administrators and workers
Connections 23
- Administrators and workers → Application routes: uses
README.md - Application routes → Sign-in: routes to
frontend/src/App.tsx - Application routes → Ticket workspace: routes to
frontend/src/App.tsx - Application routes → Ticket collaboration: routes to
frontend/src/App.tsx - Application routes → Admin tools: routes to
frontend/src/App.tsx - Session state → API operations: uses
frontend/src/auth/AuthProvider.tsx - API operations → HTTP client: calls
frontend/src/api/endpoints.ts - Sign-in → HTTP client: requests
frontend/src/pages/Login.tsx - HTTP client → FastAPI entry: sends requests
README.md - FastAPI entry → Versioned API routes: mounts
backend/app/main.py - FastAPI entry → Health endpoint: mounts
backend/app/main.py - Versioned API routes → Authentication route: registers
backend/app/api/v1/router.py - Authentication route → Credential checks: calls
backend/app/api/v1/auth.py - Credential checks → User records: loads user
backend/app/services/auth_service.py - Credential checks → Local SQLite: queries
- Ticket rules → Audit history: records events
backend/app/services/ticket_service.py - Ticket rules → Notifications: sends notices
backend/app/services/ticket_service.py - Ticket rules → Domain records: reads and writes
backend/app/services/ticket_service.py - Asset management → Audit history: records events
backend/app/services/asset_service.py - Reporting → Domain records: queries
backend/app/services/report_service.py - Domain records → Local SQLite: persists
- User records → Local SQLite: persists
- FastAPI entry → API error handling: registers handlers
backend/app/main.py