Skip to content

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
Lumora Dental home page on desktop

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
Lumora Dental home page, scrolled through its sectionsLumora Dental home page on a phone

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.