Meridian.
Booking system for a boutique group — A booking engine for a boutique hospitality group that turns a fiddly reservation into a two-tap yes.
Overview
Meridian runs a handful of much-loved venues on a booking flow guests quietly hated. We rebuilt it into something as considered as the rooms.
The challenge
Availability across venues is genuinely complex; the interface had to hide that complexity while never lying about it.
- Real-time availability across venues
- A flow that never dead-ends
- Clear pricing with zero surprises
- An admin the front desk enjoys
Our approach
We modelled the messy availability rules first, then wrapped them in a flow that only ever asks the next necessary question.
- A booking core that respects real rules
- Progressive disclosure, one decision at a time
- An honest, itemised price at every step
- A calm admin for the people who live in it
The outcome
Meridian cut booking abandonment sharply and gave the front desk hours back each week. Guests finish in two taps; staff stop firefighting the old tool.
“Guests book in seconds; we stopped apologising for the old system.”
Under the hood
SvelteKit server routes talk to a Prisma/PostgreSQL core that models rooms, tables and terraces as one availability graph; Twilio confirms by SMS/WhatsApp, Stripe holds deposits, Fly.io keeps it close to guests.
- Availability solved as interval trees, not cron checks
- Double-booking impossible: serialisable transactions
- Twilio WhatsApp confirmations with magic-link manage
- Deposit auth/capture flows via Stripe
Also considered Cal.com self-hosted got close — bespoke inventory rules for shared spaces tipped it to custom.