How akramswe/caseflow-aspnetcore works
CaseFlow is a support-case management web app: users browse and create cases, inspect details, change workflow status, assign owners, add internal notes, and export case data. Its browser dashboard calls the Minimal API, which delegates operations to CaseService; validation, workflow/SLA rules, and SQLite persistence support those operations. Dashboard metrics, audit history, and optimistic concurrency are also central capabilities. The excerpts show API, service, domain, workflow, and UI wiring; persistence implementation details and the HTML structure were not sampled, so their links rely only on documented behavior where noted.
Main entry points: CaseService.cs Case service · app.js Case dashboard · CaseEndpoints.cs Case endpoints · Program.cs App composition
Components 12
Browser client
- Case dashboard
src/CaseFlow.Api/wwwroot/app.js - Dashboard shell
src/CaseFlow.Api/wwwroot/index.html
HTTP API
- Case endpoints
src/CaseFlow.Api/Endpoints/CaseEndpoints.cs - App composition
src/CaseFlow.Api/Program.cs
Case operations
- Case service
src/CaseFlow.Api/Services/CaseService.cs - Input validation
src/CaseFlow.Api/Services/CaseValidation.cs - Workflow and SLA
src/CaseFlow.Api/Services/CaseWorkflow.cs - API contracts
src/CaseFlow.Api/Contracts/CaseDtos.cs
Domain and persistence
- Case records
src/CaseFlow.Api/Domain/SupportCase.cs - SQLite case store
src/CaseFlow.Api - Notes and activity
src/CaseFlow.Api/Domain/SupportCase.cs
Other components
- Case user
Connections 13
- Case user → Case dashboard: uses
src/CaseFlow.Api/wwwroot/app.js - Dashboard shell → Case dashboard: hosts
- Case dashboard → Case endpoints: requests
src/CaseFlow.Api/wwwroot/app.js - App composition → Case endpoints: maps
src/CaseFlow.Api/Program.cs - Case endpoints → Case service: dispatches
src/CaseFlow.Api/Endpoints/CaseEndpoints.cs - Case service → Input validation: validates
src/CaseFlow.Api/Services/CaseService.cs - Case service → Workflow and SLA: applies rules
src/CaseFlow.Api/Services/CaseService.cs - Case service → Case records: operates on
src/CaseFlow.Api/Services/CaseService.cs - Case service → API contracts: returns
src/CaseFlow.Api/Services/CaseService.cs - Case service → SQLite case store: reads and writes
README.md - App composition → SQLite case store: configures
src/CaseFlow.Api/Program.cs - Case service → Notes and activity: records and loads
src/CaseFlow.Api/Services/CaseService.cs - Case records → Notes and activity: contains
src/CaseFlow.Api/Domain/SupportCase.cs