← Back to Work
Client Project Vanilla JS / HTML / CSS Stripe Netlify Functions & Blobs GA4 & Meta Pixel

Making Unlimited Memories

A full freelance build for a South East London mobile soft play hire business, covering booking, payments, and ongoing analytics, built and maintained end to end.

Overview

Making Unlimited Memories hires out mini soft play equipment for ages 1–5 across South East London (Bellingham, Beckenham, Catford, Sydenham, and Bromley) for birthday parties, community events, and pop-up play mornings. I built and continue to maintain the full site as a solo freelance engagement: not just the initial build, but the live operational system the business runs on day to day.

The brief evolved from "a working checkout" into a small platform: automated deposit and damage-deposit handling, scheduled customer communications, a delivery-zone engine, and an internal toolset that lets the owner manage discounts, availability, and marketing links without touching code.

What I Built

  • Deposit-based Stripe checkout, with an automated damage-deposit authorization hold placed 3 days before each event and a staff tool to capture or release it after inspection
  • A delivery-area zone checker: postcode lookup and Haversine distance calculation determines whether an address falls inside the free-delivery radius, with the same logic shared between the homepage checker and checkout so the result is always consistent
  • Scheduled, automated emails via Resend: balance-due reminders at 7 and 2 days before an event, damage-deposit hold confirmations, and an internal alert when a listed event's date has passed and needs archiving
  • A live booking-availability calendar and real-time add-on stock limits, both enforced server-side, not just in the UI
  • A password-gated internal admin suite (5 tools): discount-code generation, availability/date-blocking, custom package-adjustment links for individual customers, damage-deposit management, and a UTM link builder for tracking social/QR campaign traffic
  • GA4 and Meta Pixel wired in across every customer-facing page, with Purchase/Lead conversion events tied to real booking and contact-form data
  • Netlify Forms-powered contact form (honeypot spam protection) and a newsletter signup (Brevo) issuing single-use discount codes
  • Client-side PDF invoice generation for each booking

Why This Stack

No framework, no build step: just HTML, CSS, and vanilla JavaScript, with Netlify Functions handling everything that needs a server (payments, email, scheduled jobs) and Netlify Blobs standing in for a database. For a single-owner business with no dedicated dev team, that's a deliberate trade: the entire site runs on Netlify's free/low tier, deploys are a single git push, and there's no framework version, dependency tree, or ORM for a future developer (or the owner themselves) to inherit and get stuck on.

The same philosophy carries into the admin tools: rather than a generic CMS, each internal tool does exactly one job the business actually needs, such as generating a code, blocking a date, or building a tracked link, kept deliberately small and legible rather than a general-purpose dashboard nobody but a developer could extend.

Status: live and in active use. The business runs its real bookings, payments, and customer communications through this system today; a companion WordPress install handles standalone SEO landing pages, kept fully decoupled from the booking/checkout system itself.

Type

Client Website

Platform

Web (Responsive)

Tech Stack

HTML/CSS/JS Stripe Netlify Functions Netlify Blobs Resend Brevo GA4 Meta Pixel

Domain

Party & Event Hire Booking

← All Projects Next: I'll Name This Game Later →