DentaBook.
A complete dental practice management
SaaS.
Multi-tenant platform for dental clinics: online patient booking, anatomical dental chart, CRM, SMS confirmations, FullCalendar scheduling, file management, and printable patient cards. 14 database models. 4 user roles. 6 development phases. Built by one engineer.
VISIT DENTABOOK14
Database Models
6
Dev Phases
<2m
Booking Time
1
Engineer
The Challenge
Dental clinics run on paper and phone calls.
Most dental clinics in Poland still rely on phone-based appointment booking — a receptionist manually answering calls, checking a paper calendar, and writing down patient details. During peak hours, calls go unanswered. Patients get frustrated. The clinic loses revenue.
Existing solutions are either too expensive, too complex, or too generic. Enterprise dental software costs thousands per month. Generic booking tools like Booksy don't understand dental-specific workflows — dental charts, PESEL validation, multi-office scheduling, or SMS confirmations.
The clinic needed a system where patients book appointments online in under 2 minutes — no login required. Choose an office, pick a date and time, enter details, get an SMS confirmation. Done.
But that's just the patient-facing side. The admin panel needed to be a full practice management system: multi-office scheduling, patient records, dental charts, visit tracking, SMS management, file storage, and printable patient cards. All RODO-compliant.
Platform Features
What we built.
📅
Multi-Office Scheduling
FullCalendar with color-coded offices, drag-to-create slots, schedule templates, combined calendar view. Holiday blocking.
🦷
Anatomical Dental Chart
Interactive chart with PNG tooth images, FDI/Universal numbering, surface overlays (M/D/B/L/O), bridge arcs, adult + child modes. 35 procedure dictionary.
👥
Patient CRM
26-field patient records, PESEL checksum validation, searchable table, 3-tab detail drawer, duplicate detection + merge, medical history.
📱
Online Booking Widget
Multi-step wizard: office → date → slot → patient info → SMS confirmation. Under 2 minutes. No login required. Embeddable via <script> tag.
💬
SMS System
SMSAPI integration: auto-confirmation, cancellation, reminders. KPI stats dashboard, paginated logs, manual send dialog.
🖨️
Printable Patient Card
Print-optimized card: clinic header, personal/medical data, visit history, dental chart, RODO consent, signature area.
📂
File Management
Drag-and-drop file upload via Supabase Storage. Signed URLs, per-patient files tab, download and delete.
🔐
Multi-Tenant Architecture
Tenant → Office → Schedule/Patient hierarchy. Row-Level Security via Supabase. Role-based access: Owner, Dentist, Receptionist.
⚙️
Settings & Integrations
4-tab settings: Offices, General (brand color, logo), SMS (SMSAPI token + templates), Integrations (P1, ZUS, SMSAPI status).
Development Timeline
6 phases. 1 engineer. Full SaaS.
Foundation & Multi-Tenant Core
Prisma schema (14 models, 4 enums, cascade deletes). Supabase Auth with middleware route protection. PESEL checksum validation. Multi-tenant React context. Admin sidebar layout. Public landing page + login.
Schedule Management
Office CRUD. FullCalendar time grid with color-coded offices. Schedule template system (default slots → apply to date ranges). Drag-to-create, click-to-edit time slots. Combined multi-office calendar view.
Public Booking Widget
Multi-step booking wizard with real-time availability. Patient self-booking with PESEL/phone/email entry. Instant booking confirmation. Under 2 minutes, no account required.
Patient CRM
7 server actions for patient CRUD. Searchable data table with masked PESEL. 3-tab detail drawer (personal, medical, history). Duplicate detection with side-by-side merge UI. 26 patient model fields.
Dental Chart & Visits
Anatomical dental chart with PNG tooth images, FDI↔Universal numbering, surface overlays, bridge arcs, adult + child modes. Visit editor with 3 tabs (chart + procedures + notes). 35 seeded dental procedures. Chart state carries over between visits.
Files, SMS, Settings & Print
Patient file uploads via Supabase Storage with signed URLs. SMSAPI integration for confirmations, cancellations, reminders. 4-tab settings panel. Printable patient card with RODO consent and signature area.
The Product
See it in action.
Screenshot: Admin Dashboard
Screenshot: Dental Chart
Screenshot: Schedule Calendar
Screenshot: Patient Booking
Tech Stack
What's under the hood.
FAQ
Frequently asked questions.
What is DentaBook?
DentaBook is a multi-tenant SaaS platform for dental clinics. It provides online patient booking (under 2 minutes, no login required), an anatomical dental chart with surface-level diagnostics, a patient CRM with 26-field records, SMS confirmations via SMSAPI, FullCalendar-based multi-office scheduling, file management via Supabase Storage, and printable patient cards. It's built with Next.js 16, Prisma 7, and Supabase.
What technology is DentaBook built with?
Next.js 16 with React 19 and TypeScript. Prisma 7 ORM with PostgreSQL (Supabase). Supabase Auth for multi-tenant authentication with Row-Level Security. FullCalendar for interactive scheduling. Zod for validation including Polish PESEL checksum. shadcn/ui with Radix for accessible components. SMSAPI for SMS. Vitest for testing. Tailwind CSS 4 for styling. Deployed on Vercel.
How does patient booking work?
Patients visit the clinic's DentaBook URL or use an embeddable booking widget. They choose an office, select a date and time slot from the real-time availability calendar, enter their personal details (including PESEL), and receive instant SMS confirmation. The entire process takes under 2 minutes with no login required. Clinics can embed the widget on their own website with a single <script> tag.
How does multi-tenant architecture work?
Each clinic is a "Tenant" that can manage multiple offices. Every data table includes a tenantId with Row-Level Security enforced at the Supabase level. The hierarchy is: Tenant → Office → Schedule/Patient. Three user roles control access: Owner (full control), Dentist (clinical data), and Receptionist (bookings and scheduling).
Need a platform like this?
We build multi-tenant SaaS platforms from scratch. One engineer. AI-augmented development. Healthcare, logistics, e-commerce — any industry.
Book a Free 30-min Call