Multi-tenant SaaS · Vienna, Austria

The booking platform
premium salons deserve.

A config-driven, AI-assisted, fully bilingual (DE/EN) appointment system — from a conversion-focused storefront to a complete back-office. Built end-to-end on a modern, type-safe stack.

2
Languages · DE / EN
0
Automated tests passing
0
i18n dictionary keys
Salons · multi-tenant
Overview

One platform, two faces.

A premium customer storefront and a full operations back-office, sharing one config-driven, multi-tenant core. Add a salon by dropping in a config file — no code changes.

💎

Premium storefront

A conversion-focused landing page and a guided 4-step booking flow with real-time slot availability, hold-timer reservations and a waiting list.

🗂️

Complete back-office

Dashboard, lead pipeline, CRM, weekly calendar, settings, staff, rebooking automation and AI agent logs — twelve admin surfaces.

🤖

AI-assisted intake

Claude agents classify incoming leads, score confidence and escalate uncertain cases to human review — every output schema-validated.

🌍

Fully bilingual

German & English across every surface — storefront, booking, GDPR and admin — in the formal "Sie" register for the Austrian market.

🏢

Multi-tenant

Per-salon branding, services, hours and contact info injected at runtime from config. One codebase serves every tenant.

🛡️

GDPR by design

Austrian-law compliant: explicit opt-in consent, data export, deletion & anonymisation, automatic 2-year retention cleanup.

The storefront

A landing page that sells.

Premium, restrained, trust-first — tuned for conversion. Every salon gets its own branding from config.

beauty-booking-os-web.vercel.app
Vienna Glow Studio LeistungenGalerieTeamKontakt
✨ Wien 1060 · Nägel · Beauty

Schönheit,
die bleibt.

Professionelle Nagelpflege, Gesichtsbehandlungen und Wimpern — in Ihrem Premium Studio in Wien.

💅 Nägel 🌿 Facial 👁 Wimpern
Studio
4.9★ Google rating 200+ reviews 24/7 online booking DSGVO compliant
Unser Angebot

Alles für Ihre Schönheit

Beliebt 🔥
Nagelstudio
Gel · Acryl · Nail Art
ab € 35,–Buchen →
Gesichtspflege
HydraFacial · Peeling
ab € 55,–Buchen →
Trending ✨
Wimpern & Brauen
Lifting · Tinting
ab € 45,–Buchen →

German shown above is the live default for the Vienna market — the whole storefront flips to English with one toggle.

Customer experience

A booking flow that converts.

Four guided steps with live slot availability and a hold-timer that prevents double-booking. Click through the real flow below.

beauty-booking-os-web.vercel.app/booking
1
Service
2
Date & time
3
Details
4
Confirm

Which service would you like to book?

HydraFacial Classic
45 min
€ 89
Gel Manicure
60 min
€ 45
Lash Lift & Tint
60 min
€ 75
Brow Lamination
45 min
€ 55

Pick a date & time

Available for HydraFacial Classic · 45 min

MoTuWeThFrSaSu

Your details

Confirm your appointment

ServiceHydraFacial Classic
DateThursday, 25 June 2026
Time10:00
GuestMara Hofer
Total€ 89

✓ Payment on site · Instant confirmation · Free cancellation up to 24h before

Internationalisation

Truly bilingual — try it.

730 typed dictionary keys, cookie-based persistence, config-driven default locale, and a collapsible flag switcher. Toggle the language and watch the card update live.

Austria for German · UK for English — rendered as inline SVG, so flags display correctly on every OS.
…/booking · EN
Service
2
Date & time
3
Details
4
Confirm

Choose date & time

Available for HydraFacial Classic

10:00
10:30
11:00
11:30
⏳ Slot reserved — 9:58 remaining
  • Every customer surface, the GDPR pages and the entire admin panel localised.
  • Formal "Sie" register throughout, tuned for the Austrian salon market.
  • Locale persisted via cookie — no browser storage, SSR-safe.
  • Default locale resolved from each salon's config, with a safe fallback.
  • Parity-locked dictionaries: a missing key is a compile-time error.
Back-office

A back-office that runs the salon.

Twelve admin surfaces, fully localised. Switch between a few of them below.

beauty-booking-os-web.vercel.app/admin
8
Appointments today
↑ 3 reminders sent
€ 1.240
Week revenue
23 bookings
5
New leads
12 this week
2
Pending actions
Confirmation needed
Appointments today
TimeGuestServiceStatus
10:00Mara H.HydraFacial● Confirmed
11:30Lena K.Gel Manicure● Pending
14:00Sofia B.Lash Lift● Confirmed
16:30Eva W.Brow Lamination● Pending
New leads
AM
Anna M.
🌐 Web enquiry
92% · 2m
EW
Eva W.
📱 Google
78% · 1h
LT
Lisa T.
📸 Instagram
64% · 3h

AI cost today: € 0.0123 · 4,102 tokens

New 2
Anna M.
🌐 Web · 92% AI
Eva W.
📱 Google · 78% AI
Contacted 1
Katrin H.
☎ Phone
Qualified 1
Lisa T.
📸 Instagram
Booked 1
Mara H.
HydraFacial · 10:00
Lost 0
Mon 22
09:00 Gel
Tue 23
Wed 24
11:00 Facial
Thu 25
10:00 Hydra
14:00 Lash
Fri 26
15:30 Brow
Sat 27
10:30 Nails
Sun 28
Online booking
Automatic reminders
Thursday evening hours
Waiting list
Minimum advance booking2 hours
Cancellation window24 hours
success
intake-agent · lead classified — intent: booking (92%)
320 tok
success
booking-agent · slot reserved & confirmed
180 tok
escalated
intake-agent · confidence 0.41 → human review
298 tok
success
followup-agent · reminder scheduled (−24h)
96 tok
Intelligence

AI agents, kept on a leash.

  • Intake agent classifies each lead's intent and assigns a confidence score.
  • Below threshold → routed to a human-review queue, never auto-actioned.
  • Every agent output validated against a Zod schema — no raw JSON trusted.
  • Each call logged with token count, duration and estimated cost.
  • Follow-up & rebooking agents re-engage guests with consent-aware messaging.
Compliance

GDPR, the Austrian way.

  • Three explicit consent fields — no pre-checked boxes.
  • Self-service data export to JSON on request.
  • Deletion anonymises rather than hard-deletes, preserving tax records.
  • Automatic anonymisation after two years.
  • Per-tenant data-controller contact in every salon config.
Under the hood

Architecture.

A type-safe monorepo with a frozen, test-protected core and a config-driven presentation layer.

Client
Storefront
Next.js 15 · App Router
Booking flow
React · server components
Admin panel
12 localised surfaces
API & logic
Route handlers
Slots · reservations · leads
AI agents
Claude · Zod-validated
Queue
BullMQ · Redis · reminders
Data & infra
Database
Supabase · PostgreSQL · Drizzle
Email
Resend
Deploy
Vercel · Turborepo
Proof, not mockups

Straight from the live system.

The screens above are an interactive recreation. Below are real, unedited captures from the deployed product running on actual demo data — click any to enlarge.

Live admin dashboard

Admin dashboard

Live KPIs, today's appointments & AI-scored leads

Live front-desk Kanban

Front Desk Kanban

Lead pipeline with real AI confidence scores

Live booking confirmation

Booking confirmation

Step 4 summary with GDPR consent fields

Captured from beauty-booking-os-web.vercel.app · dark theme · English locale.

Stack

Built with.

Next.js 15TypeScriptReact 19 SupabasePostgreSQLDrizzle ORM ZodBullMQ + RedisAnthropic Claude API Resendpnpm + TurborepoVitest + Playwright TailwindVercel
0
Tests passing
0
i18n keys · DE/EN
0
Admin surfaces
0
% type-safe