← Portfolio
Selected work · 2025 · Brand & full-stack platform

A booking studio they own outright.

An events brand was about to buy its whole operation off the shelf — a $14,000 American platform with a $500-a-year subscriptionbolted on top, and all of its customer data living on someone else's servers. The studio built the alternative instead: a fully-owned, end-to-end system — an editorial brand, a five-step booking experience, payments, a client portal and an admin backend — running for the price of the hosting it sits on.

lumaevents.ca
Luma Studio & Events
Book Your Experience
$14K*
Vendor's upfront price, avoided entirely
$500*
Their annual subscription, gone
~$14*
Real monthly running cost, all in
100%
Owned infrastructure & customer data
ClientLuma Studio & Events
ScopeBrand · Web · Booking · Portal · Admin
RoleCreative direction + full-stack
StackNext.js · Stripe · Postgres · self-hosted
01The brief

A $14K decision, before a single guest had posed.

A premium photo-experience brand was ready to launch. The plan on the table was the obvious one: buy a packaged booking-and-booth platform from a US vendor — $14,000 to get started, then $500 every year to keep using the services baked into their software.

It would have worked. It also would have meant renting the core of the business forever: the booking flow, the customer records, the galleries and the payment rails would all live inside a product owned by someone else, priced by someone else, and switched off at someone else's discretion.

The real brief wasn't “build a website.” It was a buy-versus-builddecision about who owns the operation — and the studio's answer was to build it, own it, and run it for the cost of a coffee a month.

“For a brand this premium, the booth is the show. The system behind it shouldn't be a subscription you can't turn off.”

02Buy / build

The same business, two ownership models.

Toggle between the platform that was nearly bought and the system that replaced it. The features are comparable — what changes is who owns them.

Upfront

$14,000 to start

A one-time licence to stand the business up on the vendor's product.

paid before launch
Ongoing

$500 / year, indefinitely

An annual subscription for the services wired into their software — billing, galleries, hosting.

price set by the vendor
Data

Lives on their servers

Inquiries, clients and galleries sit inside the vendor's account.

portability not guaranteed
Brand

Their template, lightly skinned

The booking flow looks like the vendor's product, not like Luma.

limited control
Leverage

Locked in

Leaving means rebuilding from scratch and losing the history.

vendor holds the keys
Roughly $14,000 + $500/yr — and the business is a tenant in it.
Upfront

One build, fully owned

The studio designed and built the platform — brand, booking, payments, portal, admin.

no licence fee
Ongoing

~$14 / month hosting

The only recurring cost is the server it runs on — self-hosted on owned infrastructure.

no subscription
Data

In Luma's own database

Every inquiry, client and gallery is theirs, exportable any time.

fully portable
Brand

Editorial, end to end

A custom five-step booking experience that is the brand, not a skin over a template.

total control
Leverage

Theirs to change

New packages, vibes and add-ons are edited from the admin — no developer, no vendor.

they hold the keys
A one-time build, then ~$14/mo — and the business owns the whole thing.
03Inside the build

The actual platform, front to back.

Five surfaces, one system: the public brand, the booking experience, the client-facing portal, and the admin where Luma runs all of it themselves.

LUMA
STUDIO & EVENTS · BURLINGTON, ONTARIO

The public brand

An editorial, premium-feeling site — “not just a photo booth, a brand moment.” Where the whole experience starts.

Booking · Step 1–5

Build Your Experience

The five-step configurator — the differentiator. Event type, package, vibe, add-ons, details.

Client portal

The client portal

A signed-in space for booked clients — details, files and their delivered gallery.

LUMA STUDIO · ADMIN · DASHBOARD
Pending inquiries
0
Confirmed upcoming
1
Total events
1
Revenue collected
$0

The admin backend

Events, galleries, reviews, packages, logs and subscribers — and a Builder Config where the booking flow itself is edited without code.

03bThe differentiator

Booking as a guided, five-step experience.

Most photo-booth sites are a contact form and a PDF. Luma's is a curated flow that mirrors how a couple actually thinks about their night. Every selection writes straight to the database and Stripe the moment it's made — no form to re-key, no handoff to drop.

Build Your Experience
What are we celebrating?
Step 1

The occasion

Wedding · Brand Moment · Milestone · Something New

Wedding
Step 2

The experience

The Promise · The Signature · The Luxe · The Bespoke

The Signature
Step 3

The feel

Editorial · Warm & Golden · Bold & Vibrant · Custom Branded

Editorial
Step 4

The add-ons

Glam filters · scrapbook · audio guestbook · live gallery

+ 3 selected
Step 5

The details

Date, venue and contact — straight into the inquiry queue

Sat · Sep 2026
Your night, so far$1,800
The system
04Architecture

A platform, not a plugin.

Behind the editorial surface, the booking journey runs as one connected system. The moment a guest finishes the five steps, the selection is written to the database and a Stripe charge is raised — an inquiry becomes a booking, payment opens the portal, and the event flows through to a delivered gallery.

entry · publicBuild Your ExperienceFive-step flow, built natively into the site — writes the selection straight to the database & Stripe
the hubApplication & APINext.js app and API layer — the single brain routing every step
source of truthPostgres databaseInquiries, clients, packages, galleries and config — all owned
paymentsStripeDeposits and balances taken directly, no platform middleman
transactionalResend email templatesInquiry, confirmation, reminders and delivery — automated
client-facingClient portalMagic-link access to event details and the final gallery
operatorAdmin + Builder ConfigRun events and edit the booking flow itself — no code, no vendor
runs onSelf-hosted infrastructureOwned outright · ~$14/mo · Docker + Caddy
Software like this is normally rented by the month. This was built to be owned.
04bThe build

What the studio shipped.

Customer-facing

  • An editorial brand identity and premium marketing site
  • A five-step “Build Your Experience” flow, built natively into the site, writing each selection straight to the database & Stripe
  • Four curated packages, with a live running total
  • Four visual “vibes” that carry into prints and booth UI
  • Stripe payments for deposits and balances
  • A magic-link client portal with the delivered gallery

Behind the scenes

  • An admin dashboard: events, galleries, reviews, subscribers
  • A Builder Config to edit event types, vibes & add-ons without code
  • Eleven Resend email templates across the full lifecycle
  • A Postgres database as the single source of truth
  • Activity logs and an inquiry queue
  • Self-hosted on infrastructure the studio owns outright
Nx.
Next.js
Re.
React
St.
Stripe
Pg.
Postgres
Rs.
Resend
Cd.
Caddy
Do.
Docker
05The approach

Own the operation, not just the look.

The cheapest line item is the one you stop paying after launch.

The instinct, with a deadline and a launch ahead, is to buy the packaged platform and move on. The studio weighed it honestly — $14,000 up front and $500 a year is a real, recurring tax on a young business, and it buys a product you never actually own.

Building it instead took more work at the start and almost nothing after. The recurring cost dropped from a yearly subscription to the price of the hosting, and every off-the-shelf shortcut was measured against what it would cost in fees and control over the life of the business.

That's the throughline of the studio across every project: infrastructure you own, a brand that's truly yours, and no quiet dependence on someone else's platform — built once, owned for good.

Commission the studio

About to rent the core of your business? It can be built and owned instead.

Commission the studio →