Case study
TG Spaces
A studio-booking and events platform we built end-to-end for a Dutch co-working and creative venue — staff now run the entire business from one admin panel, with no third-party booking fees and no code needed
Project overview
TG Spaces (tg-spaces.com) is a booking and events platform we built end-to-end for a Dutch co-working and creative venue. The client was running bookings, invoicing, and scheduling by hand across disconnected tools — and paying platform fees on every booking. We replaced all of it with one production Next.js application covering the public marketing site, a live booking flow, Google Calendar availability, invoicing, and email — all tied together by a large, role-aware admin panel.
The heart of the platform is that admin panel: a 24-section back office where staff manage bookings, events, organisers, studios, pricing, invoices, discounts, content, and the team itself. We built it on strict modular conventions — single sources of truth, typed registries, and a tested booking lifecycle — so it stays maintainable as it grows. The result: staff run the entire venue from the admin panel, with no third-party booking fees and no code needed.
The challenge
Problem: The venue was running bookings, invoicing, and scheduling by hand across disconnected tools, and paying third-party platform fees on every booking. Staff needed one system that runs the whole business — public site included — without writing code or depending on external booking software.
Technical implementation
Admin panel (the core)
A 24-section back office that runs the venue: bookings, events, organisers, calendar, clients, invoices, discounts, studios, pricing, add-ons, content/pages, blog, FAQ, announcements, emails, team/RBAC, analytics and settings. Server components with interactive client islands, grouped by concern.
Booking lifecycle engine
A tested, ordering-sensitive state machine for payments and access. Slot availability is the intersection of the booking table and each studio's Google Calendar free/busy, with overlap and conflict checks centralised in one module.
Bilingual, content-driven site
Full EN/NL localisation via next-intl with a per-locale DB overlay, plus an editable content/pages system so the public marketing site is managed entirely from the admin panel.
Modular by design
Built on strict 'single source of truth' conventions — registries for statuses and permissions, pure logic separated from framework code, and a generated code map. Adding a content type automatically wires up its nav and access rules.
Key features
- Studio and event bookings with manual-approval and payment lifecycle
- Google Calendar availability sync (free/busy gating per studio)
- Role-based admin access with capability and nav-visibility controls
- Invoicing with PDF generation, discounts, and a redemption ledger
- Transactional, localised emails (Resend) matched to the booker's language
- Bilingual EN/NL public site managed from the admin panel
- Rate limiting, Cloudflare Turnstile, and consent-gated analytics
Need a system like this?
Tell us where work gets stuck — in one call you'll hear what it takes to remove it.
Impact
Technologies used
Business value
- One platform replaces manual booking, invoicing, scheduling — and third-party booking fees
- Non-technical staff run the entire venue from the admin panel
- Modular foundation makes new features cheap to add safely