This is the exact booking system we build for appointment-based shops โ running here on a fictional spa, Serenity Head Spa & Wellness, with sample data. Book as a guest, then open the owner’s admin and confirm your own booking. Everything is clickable; nothing is a screenshot.
The guest’s side: pick treatments (up to 5 in one visit), choose a day and time, pick a therapist or “No preference”, and send the booking. It takes about a minute.
Open the shop page → ๐๏ธThe shop’s side, no password needed in the demo: confirm bookings, take phone bookings, manage treatments and prices, set staff schedules, block days off, and pull monthly reports.
Open the admin panel →The full loop, exactly as it works for a real shop:
Every feature below is live in this demo โ including the availability rules.
Played with the data? Reset it back to the original sample bookings, treatments and staff.
Demo notes: Serenity and all of its guests, staff and bookings are fictional. Data lives only in this browser (localStorage) and is shared between the two views on this device โ no account, no server, and no email is ever sent. The production system adds email notifications to the shop and each assigned therapist, plus a private self-service link for guests to change or cancel.