How subashkandasamy/hsm works
Uyirly appears to be a hospital-management web application, accompanied by a separately run lab/radiology connector. The likely hospital workflow spans patient registration, outpatient/inpatient care, diagnostics, pharmacy and billing; the tree also shows distinct emergency, blood-bank, insurance and compliance capabilities. A useful internal layer is the server-action/API boundary backed by Supabase. The README is only the Next.js starter README, so it does not document product workflows. Edges below are limited to relationships visible in excerpts or SOURCE INDEX references; unsampled product areas are represented without guessed call chains.
Main entry points: (dashboard) Dashboard interface · index.ts Connector runtime · service.ts Supabase service · api Device and webhook APIs
Components 30
Hospital operations
- Patient records
src/app/(dashboard)/patients - Appointments
src/app/(dashboard)/appointments - Pharmacy
src/app/actions/pharmacy.ts - Inventory
src/app/(dashboard)/inventory
Clinical and diagnostics
- Outpatient care
src/app/(dashboard)/opd - Inpatient care
src/app/(dashboard)/ipd - Emergency care
src/app/(dashboard)/emergency - Laboratory
src/app/(dashboard)/lab - Radiology
src/app/(dashboard)/radiology - Blood bank
src/app/(dashboard)/blood
Finance and administration
- Billing
src/app/(dashboard)/billing - Service billing
src/lib/billing/serviceBill.ts - Insurance claims
src/app/actions/insurance.ts - Accounts
src/app/(dashboard)/accounts - PCPNDT compliance
src/app/(dashboard)/pcpndt
Web platform
- Dashboard interface
src/app/(dashboard) - Server actions
src/app/actions - Device and webhook APIs
src/app/api - Supabase service
src/lib/supabase/service.ts
Device connector
- Connector runtime
connector/src/index.ts - Device transports
connector/src/transports - Result queue
connector/src/queue.ts - Result uploader
connector/src/uploader.ts - DICOM server
connector/src/dicom/server.ts - DICOM disk watcher
connector/src/dicom/disk.ts - Connector storage
connector/src/storage.ts - Connector logging
connector/src/log.ts
Other components
- Hospital staff
- Uyirly cloud
- Razorpay
Connections 36
- Hospital staff → Dashboard interface: uses
- Dashboard interface → Patient records: manages
- Dashboard interface → Appointments: manages
- Dashboard interface → Outpatient care: manages
- Dashboard interface → Inpatient care: manages
- Dashboard interface → Emergency care: manages
- Dashboard interface → Laboratory: manages
- Dashboard interface → Radiology: manages
- Dashboard interface → Blood bank: manages
- Dashboard interface → Pharmacy: manages
- Dashboard interface → Inventory: manages
- Dashboard interface → Billing: manages
- Dashboard interface → Insurance claims: manages
src/app/(dashboard)/insurance/_components/RemittanceManagerModal.tsx - Dashboard interface → Accounts: manages
- Dashboard interface → PCPNDT compliance: manages
- Dashboard interface → Server actions: invokes
src/app/(dashboard)/insurance/_components/RemittanceManagerModal.tsx - Device and webhook APIs → Supabase service: queries
src/app/api/device/files/route.ts - Device and webhook APIs → Supabase service: queries
src/app/api/webhooks/razorpay/route.ts - Razorpay → Device and webhook APIs: sends events
- Billing → Service billing: creates service bills
- Connector runtime → Result queue: uses
connector/src/index.ts - Connector runtime → Result uploader: starts
connector/src/index.ts - Connector runtime → Device transports: starts
connector/src/index.ts - Connector runtime → DICOM server: starts
connector/src/index.ts - Connector runtime → Connector storage: resolves
connector/src/index.ts - Connector runtime → Connector logging: initializes
connector/src/index.ts - DICOM server → Connector logging: logs
connector/src/dicom/server.ts - DICOM server → Connector storage: scans
connector/src/dicom/server.ts - DICOM server → DICOM disk watcher: uses
connector/src/dicom/server.ts - Connector runtime → Uyirly cloud: uploads results
- Laboratory → Device and webhook APIs: receives analyzer results
- Device and webhook APIs → Supabase service: stores parsed results
src/app/api/webhooks/razorpay/route.ts - Server actions → Supabase service: reads and writes
- Service billing → Supabase service: writes bills
src/lib/billing/serviceBill.ts - Service billing → Billing: reconciles bill
src/lib/billing/serviceBill.ts - Insurance claims → Supabase service: persists remittances