Concept build · working booking demo
Lumora Dental: a clinic site that fills its own calendar.
Patients pick a treatment, a dentist and a time. The booking lands in Google Calendar and a confirmation email goes out instantly.
- Type
- Dental clinic
- Stack
- Next.js 16, MongoDB, Better Auth, Google Calendar API, Resend
- Scope
- Site + booking + admin
- Year
- 2026

The brief
Most clinic sites send you to a phone number. I wanted to show what a small practice gets when booking is built into the site: no third-party widget, no double bookings, and staff in control.
What I built
Real-time booking
Available slots come from working hours, treatment length and existing bookings, so two patients can never get the same time.
Calendar and email
Each booking syncs to the clinic's Google Calendar and sends a branded confirmation email.
Staff admin
Staff sign in with two-factor auth to manage bookings, treatments, dentists and hours.
Public demo mode
Anyone can try the admin panel with a shared demo login, on a separate database that resets.
The hard part
Time zones and race conditions. Slots are calculated in the clinic's timezone (America/Chicago), and bookings are written in a database transaction so a slot can't be taken twice in the same second.
- Unit and end-to-end tests
- Daily background jobs
- Email sign-in codes
- Deployed on Vercel


2 project slots open for January 2027
Let's build something that works.
Book a 15-minute call. You'll leave with a clear plan and a price, even if you don't hire me.
I read and answer every enquiry myself, usually the same day.