A clinic in Esquel that needed more than a website.
ME Odontología came to us with an unused domain and a paper appointment sheet. They left with a website, a digital patient-call system integrated with their management software, and real-time service metrics.
ME Odontología Estética y Salud Integral is a multidisciplinary clinic in Esquel. Dentistry, facial aesthetics, kinesiology, psychology. Four professionals, several treatment rooms, and patients who arrived at reception without knowing whether they'd wait ten minutes or an hour.
The initial request was a website. What we ended up building was quite a bit more than that.
The website
Five pages. A home with a clear value proposition, services detailed by specialty, a team presentation with photos and credentials, an appointments page geared toward conversion, and a list of insurance providers optimized for local searches in Esquel and Chubut.
We wrote all the copy ourselves. There's no generic clinic text: there's a voice, an identity, and a reason for a new patient to choose ME before ever setting foot in the place.
The stack: Astro + Tailwind + Vercel. Fast load, mobile-first, complete technical SEO from day one, metadata, Open Graph, canonical, heading structure, Google Analytics 4 and Microsoft Clarity to understand how people behave when they arrive.
The problem nobody had named
In the first meeting, something came up that wasn't in the original request: the clinic was about to start using Medilink, a clinical management SaaS, and they had no way to tell patients in the waiting room which office to go to or when it was their turn.
Each professional called from the doorway. Or sent reception to fetch them. Or the patient asked every ten minutes.
That has a name: dead time. And in a clinic with several professionals working at the same time, it adds up.
The patient-call system
We built a patient-call system integrated with Medilink's API. Each professional has their own panel in their office, from any device with a browser. They see their queue for the day, automatically synced with the appointments loaded into Medilink. They call the next patient with one click. The waiting room screen displays the name and the room in real time, with an audible alert.
No double data entry. No reception involvement. No paper.
The clinic admin controls, from a separate panel, which professionals take part in the call system, which room each one is assigned, and can activate or deactivate professionals without touching a single line of code.
The call system stack: Spring Boot + PostgreSQL + React + SSE. The backend runs on Railway, the frontend on Vercel. Monthly infrastructure cost: close to zero.
The metrics that now exist
The call system knows exactly when each patient is called and when the professional moves on to the next one. With that we built something Medilink can't provide on its own: how long each actual consultation took, how much time passed between one patient and the next, in which part of the day delays pile up, which professional has the most variance between the scheduled time and the actual time.
A dashboard by day, by week, by professional. With history.
Information that didn't exist before. Now it exists, and it updates itself.
What we learned
A website is the entry point. But when the client trusts you with more than one thing, the real problems show up: the ones that don't have a name yet, the ones they solve with paper, the ones they "don't know if it can be done".
Almost always, it can be done.
Does your clinic, practice, or health center have processes that still depend on paper or on someone calling from the doorway? We build custom solutions integrated with the systems you already use.