How richyizhao/inventory-tracker-app works
Inventory Tracker is a web application for managing a product catalog, categories, stock movements, users and permissions, with dashboard and analytics views. Users interact through the React client, which sends requests to the ASP.NET API; the API persists domain records in PostgreSQL. The backend also handles authentication, image storage and demo-data operations. The graph follows the documented product capabilities and repository paths; detailed wiring between unsampled feature modules is summarized at subsystem level.
Main entry points: api.ts API client · routes App routes · AppDbContext.cs Application database · Endpoints Auth endpoints
Components 23
React client
- App shell
client/src/app/app.tsx - App routes
client/src/app/routes - Authentication UI
client/src/features/auth - API client
client/src/lib/api.ts
Inventory operations
- Catalog management
client/src/features/products - Category management
client/src/features/categories - Stock movements
client/src/features/transactions - Users and roles
client/src/features/users
Insights and settings
ASP.NET API
- Auth endpoints
server/src/Authentication/Endpoints - Domain endpoints
server/src - Analytics endpoints
server/src/Analytics/Endpoints - Dashboard endpoint
server/src/Dashboard/Endpoints/GetDashboardOverview.cs - Access controls
server/src/Common/Api/Filters - Image storage
server/src/Products/Services - JWT authentication
server/src/Authentication/Services/Jwt.cs
Persistence and integrations
- Application database
server/src/Data/AppDbContext.cs - PostgreSQL
- Azure Blob Storage
- Local image files
Other components
- User
Connections 31
- User → App shell: uses
- App shell → App routes: renders
- App routes → Authentication UI: offers sign-in
- Authentication UI → API client: sends requests
- App routes → Catalog management: opens
- App routes → Category management: opens
- App routes → Stock movements: opens
- App routes → Users and roles: opens
- App routes → Dashboard: opens
- App routes → Analytics: opens
- App routes → Demo data: opens
- Catalog management → API client: sends requests
- Category management → API client: sends requests
- Stock movements → API client: sends requests
- Users and roles → API client: sends requests
- Dashboard → API client: sends requests
- Analytics → API client: sends requests
- Demo data → API client: sends requests
- API client → Auth endpoints: calls
- API client → Domain endpoints: calls
- API client → Analytics endpoints: calls
- API client → Dashboard endpoint: calls
- Domain endpoints → Access controls: checks access
- Domain endpoints → Application database: reads and writes
- Analytics endpoints → Application database: reads
- Dashboard endpoint → Application database: reads
- Auth endpoints → Application database: reads and writes
- Auth endpoints → JWT authentication: issues tokens
- Image storage → Azure Blob Storage: stores images
- Image storage → Local image files: stores images
- Application database → PostgreSQL: persists data