How mickeykera/hms_demo works
This is a hospital operations system: staff and patients use role-specific React screens to manage intake, appointments, care, admissions, diagnostics, prescriptions, and billing through an Express API backed by SQLite. The API also exposes administration, personnel, messaging, notifications, audit, IoT, and document capabilities documented by the module tree and README. Sampled route handlers access the shared model layer directly; the patient engine assembles cross-domain profile summaries. The excerpts do not show server route registration or most modules’ internals, so those links are limited to documented API structure.
Main entry points: server.js Express API · index.js Shared data access · App.jsx React application · routes.js Role dashboards
Components 26
User Interface
- React application
frontend/src/App.jsx - Sign-in context
frontend/src/context/AuthContext.jsx - API client
frontend/src/services/api.js
Access And Oversight
- Access control
src/middleware/rbac.js - Role navigation
src/modules/navigation/routes.js - Role dashboards
src/modules/dashboards/routes.js - Audit records
src/modules/audit/routes.js
Patient Care
- Patient records
src/modules/patient/routes.js - Patient profile assembly
src/models/patient-engine.js - Appointments
src/modules/appointments/routes.js - Clinical care
src/modules/clinical/routes.js - Wards and admissions
src/modules/wards/routes.js
Diagnostics And Medication
- Laboratory
src/modules/lab/routes.js - Radiology
src/modules/radiology/routes.js - Pharmacy
src/modules/pharmacy/routes.js
Hospital Operations
- Express API
src/server.js - Billing
src/modules/billing/routes.js - Reception and intake
src/modules/reception/routes.js - Departments and personnel
src/modules/departments/routes.js - Department requests
src/modules/requests/routes.js - Patient documents
src/modules/documents/routes.js - IoT telemetry
src/modules/iot/routes.js - Shared data access
src/models/index.js - SQLite database
Other components
- Hospital staff
- Patients
Connections 38
- Hospital staff → React application: use screens
- Patients → React application: use portal
- React application → Sign-in context: uses context
- React application → API client: requests data
- API client → Express API: calls REST API
- Express API → Role navigation: dispatches routes
- Express API → Role dashboards: dispatches routes
- Express API → Patient records: dispatches routes
- Express API → Appointments: dispatches routes
- Express API → Clinical care: dispatches routes
- Express API → Wards and admissions: dispatches routes
- Express API → Laboratory: dispatches routes
- Express API → Radiology: dispatches routes
- Express API → Pharmacy: dispatches routes
- Express API → Billing: dispatches routes
- Express API → Reception and intake: dispatches routes
- Express API → Departments and personnel: dispatches routes
- Express API → Department requests: dispatches routes
- Express API → Patient documents: dispatches routes
- Express API → IoT telemetry: dispatches routes
- Express API → Audit records: dispatches routes
- Role navigation → Access control: authenticates users
- Role dashboards → Access control: checks roles
- Appointments → Access control: checks roles
- Appointments → Shared data access: reads and writes
- Patient records → Shared data access: reads and writes
- Clinical care → Shared data access: reads and writes
- Wards and admissions → Shared data access: reads and writes
- Laboratory → Shared data access: reads and writes
- Radiology → Shared data access: reads and writes
- Pharmacy → Shared data access: reads and writes
- Role dashboards → Shared data access: queries data
- Department requests → Shared data access: reads and writes
- Patient documents → Shared data access: reads and writes
- Audit records → Shared data access: queries logs
- Patient profile assembly → Shared data access: loads patient data
- Shared data access → SQLite database: reads and writes
- Express API → SQLite database: initializes database