How indu9424/covid19-india-portal works
This is an Express API for authenticated Covid-19 state and district data operations. The main workflow is login against the user table, issue a JWT, verify it on protected requests, then read or modify state and district records or aggregate district statistics by state. All application behavior is implemented in app.js, so the graph separates its responsibilities rather than implying separate modules. The README documents the API capabilities, and the sampled source also implements district details lookup.
Main entry points: app.js JWT middleware · covid19IndiaPortal.db SQLite database
Components 11
API operations
- State reads
app.js - District CRUD
app.js - State statistics
app.js - District details
app.js - Response mapping
app.js
Authentication
- Login handler
app.js - JWT middleware
app.js - JWT library
- Bcrypt library
Persistence
- SQLite database
covid19IndiaPortal.db
Other components
- API client
Connections 21
- API client → Login handler: submits credentials
- Login handler → SQLite database: looks up user
- Login handler → Bcrypt library: checks password
- Login handler → JWT library: signs token
- Login handler → API client: returns token
- API client → JWT middleware: sends protected request
- JWT middleware → JWT library: verifies token
- JWT middleware → State reads: dispatches after verification
- JWT middleware → District CRUD: dispatches after verification
- JWT middleware → State statistics: dispatches after verification
- JWT middleware → District details: dispatches after verification
- API client → State reads: requests states
- API client → District CRUD: requests district operation
- API client → State statistics: requests statistics
- API client → District details: requests details
- State reads → SQLite database: reads states
- State reads → Response mapping: maps state rows
- District CRUD → SQLite database: reads or writes districts
- District CRUD → Response mapping: maps district rows
- State statistics → SQLite database: aggregates district totals
- District details → SQLite database: joins district and state