Yakooha

WorkMeridian

Start a project

    06 of 13

    Meridian

    A booking engine for a boutique hospitality group that turns a fiddly reservation into a two-tap yes.

    Year
    2025
    Disciplines
    Product, Web
    Platform
    Web
    Brief
    Sample client

    Use Meridian now

    Meridian on desktop: Booking system for a boutique group

    01Context

    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.

    02Problem

    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

    03Strategy

    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

    04Design

    Meridian, desktop layout
    Desktop, 1280 wide. Captured from the running build.
    Meridian, phone layout
    Phone, 430 wide. Same build, same data.

    05Engineering

    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.

    06Details

    The mechanism underneath, as a working model. Press the buttons.

    lab / product logic / interval-tree availability

    Rooms, tables and terraces are one availability graph. Double-booking is impossible, not just unlikely.

    Prisma · PostgreSQLOpen in the Lab

    Loading the model

    Figures inside a model are simulated to show how the mechanism behaves. They are not production measurements.

    07What shipped

    8 modules are in the build below. Each one works.

    • 01Party-size-aware calendar
    • 02Slots with seat counts
    • 03Deposits
    • 04WhatsApp confirmation
    • 05Manage and cancel
    • 06Availability heatmap
    • 07Host side: service list, floor plan, guest book, waitlist
    • 08Reports and venue policies

    08Technology

    • SvelteKit
    • Node.js
    • Prisma
    • PostgreSQL
    • Twilio
    • Stripe
    • Fly.io

    This is the kind of work we do under SaaS Applications.

    Now use it.

    This is Meridian, the whole application. Continue as the sample user, change things, reload. Your data stays in this browser and resets from Settings, then Data.

    yakooha.com/demo/meridian
    Open in a tab
    Meridian: Booking system for a boutique group

    A full application, not a recording. Sign in as the sample user; your data stays in this browser.

    Have a project like Meridian?

    Discuss your product See the work

    Tell us what you are building. We reply within one working day.

    Start a project

    Tell us in a minute.

    Your name, an email and a line or two. A person reads it and replies within one working day.

    What do you need? optional

    We store what you write so we can reply, nothing else. Privacy