From Desktop to Cloud: How We Rebuilt Our Clinic System as CuraPulse
CuraPulse did not start from a blank page. It is the successor to StacksClinicalSystem, our desktop clinic software, rebuilt for the web while keeping everything the old system taught us about how clinics really work.

What we kept, what we changed and why, as we moved a clinic system from the desktop to the cloud.
Where It Started
StacksClinicalSystem was a Windows desktop application, and every clinic ran its own database on its own machine. It worked, but each installation was an island: updates meant visiting each clinic, backups depended on someone remembering them, and a doctor could not open a file from anywhere but the clinic's own computer.
What We Kept
The years spent with doctors and receptionists were the most valuable part of the old system. The way patients, visits, bills and specialty files fit together carried straight over into CuraPulse. The domain model moved; the desktop screens did not.
One Platform, Many Clinics
CuraPulse is a single platform that serves many clinics, so it had to guarantee that one clinic can never see another clinic's patients. We enforce that separation in the database itself, not only in the application code: a request that forgot to say which clinic it belongs to gets no data at all, rather than someone else's.
Every clinic also runs on its own clock. Appointments, queues and "is this visit in the past" all follow the clinic's own timezone, so what staff type is exactly what the system stores.
Every clinic also runs on its own clock. Appointments, queues and "is this visit in the past" all follow the clinic's own timezone, so what staff type is exactly what the system stores.
A Modern Stack
CuraPulse is built with Laravel on the backend, React with Inertia and Tailwind on the frontend, and PostgreSQL as the database.
What It Means for Clinics
No installation, no server in the back room and no update visits. Clinics sign in from the browser, and every improvement we ship reaches every clinic at once.


