11 September 2026
HMS: Designing a Hospital Management System Around Roles, Not Just Features

A hospital isn't one user persona — it's at least four, all looking at overlapping data through completely different lenses. That's the starting point for HMS, a full-stack Hospital Management System I built around role-based access control first, features second.
Four roles, four different apps (that share one backend)
Chief Admins, Specialist Doctors, Reception/Staff, and Patients each get a tailored workflow rather than the same dashboard with some buttons hidden. A doctor doesn't need billing controls; a patient shouldn't see another patient's chart; reception needs admission/discharge tools that a doctor never touches. Getting RBAC right at the data-access layer — not just hiding UI elements — is what makes this safe to actually use, not just look like it works in a demo.
The features that make it feel real
- AI-powered diagnostics — a computer vision analyzer for X-rays, CT scans, and MRIs that flags anomalies with confidence scores and localizes where on the image the anomaly is, instead of just returning a single "positive/negative" label.
- Live inpatient bed & ward matrix — a visual grid across ICU, Emergency, General Wards, and Deluxe Suites with one-click admission, discharge, and sanitize-status toggling. Anyone who's worked near hospital ops knows bed availability is one of the most operationally critical, most poorly-digitized pieces of hospital software — this fixes that with something a receptionist can actually glance at.
- Digital e-prescriptions — real-time vital capture (BP, heart rate, SpO2, temperature, weight, BMI), a multi-drug dosage builder, dietary guidance, and instant print/PDF export, so prescriptions aren't stuck as a scribbled paper note.
- Telehealth & billing ledger — remote consultations and a running billing record tied to the same patient record everything else touches.
Why this matters as a portfolio project
It's easy to build a CRUD app. It's a different problem to build one where getting the access boundaries wrong has real consequences — that's what made HMS worth doing properly instead of as a weekend CRUD demo.
Who can do what
| Role | Access |
|---|---|
| Chief Admin | Full system control, billing oversight |
| Specialist Doctor | Diagnostics, e-prescriptions, patient records |
| Reception / Staff | Admission, discharge, bed & ward management |
| Patient | Own records, telehealth, billing view |
Getting role-based access control right at the data layer — not just hiding buttons in the UI — is what makes a hospital system safe to actually use.
Built with JavaScript, HTML, and CSS end to end. Source on GitHub.
FAQ
Common Questions
Access is enforced at the data layer for each role — Admin, Doctor, Reception, Patient — not just hidden by the UI.