How sam-tituz/hospital-management-system works
Swasthya is a clinic-management application spanning a Next.js site and an Express API. Its visible clinical workflow covers staff sign-in, patient lookup or registration, consultation with medicine selection, and saving visits and prescriptions; the API also exposes doctor-scoped visit history. The sampled controllers confirm authentication, patient search/creation, medicine search, and visit persistence against shared database schemas. The README is a generic Turborepo starter and does not document product capabilities. Site actions, route aggregation, and most UI-to-API wiring were not sampled, so those relationships are left out.
Main entry points: db.ts Database Client · patient.routes.ts Patient Routes · server.ts API Server · patient.controller.ts Patient Service
Components 16
Clinic Site
- Sign In
apps/site/src/app/(onboarding)/auth/sign-in/page.tsx - Dashboard
apps/site/src/app/(Frontend)/dashboard/page.tsx - Consultation
apps/site/src/app/(Frontend)/patients/[patientId]/consult/page.tsx - Medicine Search UI
apps/site/src/app/(Frontend)/patients/[patientId]/consult/components/SearchMedicine.tsx
API Services
- API Server
apps/api/src/server.ts - Route Aggregator
apps/api/src/routes/index.ts - Patient Routes
apps/api/src/routes/patient.routes.ts - Patient Service
apps/api/src/controllers/patient.controller.ts - Authentication
apps/api/src/controllers/auth.controller.ts - Visit Service
apps/api/src/controllers/visit.controller.ts - Medicine Search
apps/api/src/controllers/medicine.controller.ts
Persistence
- Database Client
apps/api/src/db.ts - Clinical Schemas
lib/database/src/schema/index.ts
Shared Utilities
- Session Middleware
lib/utils/src/middlewares/authentication.middleware.ts - Server Fetch
packages/utils/src/server/retriever.ts
Other components
- Clinic Staff
Connections 12
- Clinic Staff → Sign In: opens
- Clinic Staff → Dashboard: uses
- Clinic Staff → Consultation: records visit
- API Server → Route Aggregator: mounts
- Patient Routes → Patient Service: dispatches
- Patient Routes → Session Middleware: applies
- Patient Service → Database Client: queries
- Authentication → Database Client: queries
- Visit Service → Database Client: reads and writes
- Medicine Search → Database Client: searches
- Database Client → Clinical Schemas: uses
- Server Fetch → API Server: fetches API