Case study
Burn Mat Studio
A boutique Pilates and yoga studio in Stockton-on-Tees needed a professional digital presence that handled the full member journey — discovery through to repeat booking — without enterprise overhead or cost.
Forma's first tenant · burnmatstudio.co.uk
6
Class types
3
Instructors
10
Max class size
3
Payment paths
The challenge
Great classes,
generic tools
The studio was managing bookings, payments, and member communication through generic tools that weren't built for small boutique studios. The experience for members felt functional but impersonal — a booking widget on a template site.
Enterprise platforms like Mindbody and Glofox were overpriced and overbuilt. Generic website builders couldn't handle real-time booking. Freelance builds couldn't scale or be maintained affordably. The studio needed something in between.
What we built
A complete platform,
not just a website.
Forma delivered a full-stack application — public-facing marketing site, real-time booking engine, payment processing, member accounts, staff tools, and admin dashboard. All under one roof, all on-brand.
Cinematic marketing site
Single-page design with animated canvas gradients, staggered entrance animations, class showcase, instructor profiles, live timetable, and transparent pricing — all pulling from the database, never hardcoded.
Real-time booking engine
Live spot counts for every class (capped at 10), 30-minute booking cutoff, and double-booking prevention enforced at the database level. When a class fills, the waitlist takes over automatically.
Three unified payment paths
Unlimited memberships, 5 or 10-class credit packs with expiry tracking, or single drop-in sessions via Stripe Checkout. One booking modal intelligently detects the best option for each member.
Automated waitlist system
When a class fills up, members join the waitlist. When a spot opens, the next person gets an email notification with a 30-minute window to claim it. No manual chasing.
Member dashboard
Upcoming and past bookings, pack credit management with animated progress bars and expiry warnings, profile settings, and engagement stats — classes attended, weekly streak, credits remaining.
Studio admin panel
Full CRUD for classes and schedules, member management, booking oversight, team management, and a filtered staff view showing attendee lists for each instructor's assigned classes.
How booking works
Three ways to pay,
one seamless flow.
01
Membership
Unlimited monthly access. Members book any class instantly — no credits to count, no limits. Recurring billing handled by Stripe.
02
Class packs
Buy 5 or 10 credits upfront. Each booking deducts one credit. Animated progress bars track usage, with expiry warnings as the deadline approaches.
03
Drop-in
Single-class purchase via Stripe Checkout. No account required to browse, but booking creates a member profile for future visits.
The booking modal auto-detects which option to present based on the member's account state. Members with an active membership book instantly. Pack holders see their remaining credits. Everyone else sees the drop-in price. No confusion, no wasted clicks.
Fit and finish
The details that make it
feel real.
A final sprint of UX polish turned a functional platform into something that feels crafted. Every interaction has weight and intention.
Shimmer skeleton loaders for perceived performance
Toast notification system replacing browser alerts
Tactile button press states across all interactions
Staggered entrance animations on cards, timetable slots, and lists
Animated pack credit progress bars with ember glow on expiry
Branded empty states with encouraging copy
Today indicator on timetable with auto-highlight
Slide-up cookie banner
Route-level branded loading spinners
Class-specific SVG icons in the booking modal
Member stats dashboard with streak tracking
Brand system
Boutique wellness,
not corporate gym.
The entire visual identity was built from the studio's existing logo — a warm, earthy palette that feels premium but approachable. Every colour, typeface, and micro-interaction reinforces the same aesthetic.
Colour palette
Wheat
#F5E6D3
Cocoa
#4A3728
Gold
#C8A97E
Cream
#FAF5EF
Sand
#D4C4B0
Charcoal
#2C2C2C
Ember
#D4845E
Blush
#E8C4B8
Typography
Under the hood
Modern infrastructure,
studio-grade reliability.
Next.js
Full-stack framework
Supabase
Auth + database
Stripe
Payments
Resend
Transactional email
Tailwind CSS
Styling
Vercel
Hosting
Key technical decisions
Webhook-driven payments. Bookings and credit purchases are only confirmed after Stripe fires a webhook — never optimistically. This prevents phantom bookings and ensures every confirmed spot is backed by a real payment.
Database-level integrity. Double-booking prevention isn't handled in application code — it's enforced by database constraints. Even if two members click “Book” at the exact same millisecond, only one gets the spot.
Transactional email from the studio's domain. Booking confirmations, pack receipts, cancellation notices, and welcome emails are all sent via Resend from the studio's own domain — not from a generic @forma address.
The result
A platform that feels like
theirs.
Burn Mat Studio now runs on a fully integrated platform — website, booking, payments, member accounts, and admin tools — all under one brand, with no enterprise price tag and no duct-taped integrations.