Case study / Swim4Dreams

Building the digital infrastructure behind a real endurance event.

A bilingual registration, payment and operations platform built for Swim4Dreams / 72ore Swim for Dreams.

Role
Product / Engineering
System
Event platform
Stack
Next.js · Supabase · Stripe · Vercel
Status
Production
Visit Swim4Dreams ↗

One event. Many connected decisions.

A physical endurance event needed more than a public website. Race selection, registrations, payments and participant information had to connect to the people operating the event. Multiple race formats, capacity limits and administrative validation made the operational rules part of the product.

Built within real operational constraints.

A fixed event date

The physical event set the readiness deadline for registration and operational workflows.

Real payments

Checkout had to connect payment status to registration state, not simply redirect to a payment page.

Different race rules

Multiple formats and capacity limits required distinct registration behavior, including pending validation for the 15 km race.

Manual and automated operations

Administrative review and bank-transfer approval complemented online payment workflows.

Two public languages

Participants needed access to the public experience in Romanian and English.

Changes with operational impact

Updates around the event had to account for existing registrations and the team running the platform.

A registration becomes an operational record.

  1. Race selection

  2. Cart

  3. Checkout / Stripe

  4. Registration

  5. Participant data

  6. Admin operations

Validation · Payments · Results · Standings

Technology organized around the workflow.

Public product
Next.js 16, TypeScript and Tailwind support the bilingual interface.
Application logic
Race selection, cart and registration logic connect participant choices to event rules.
Data
Supabase stores the platform’s operational records.
Payments
Stripe Checkout and webhook flows connect online payments to application state.
Operations
Administrative tools support participant and race management, result import and standings.
Delivery
Vercel provides the production deployment environment.

The product evolved with the event.

This was an operational system that had to adapt before, during and after the event. Registration rules, manual review and result management all shaped the implementation.

  1. Before the event

    Configure race formats and capacities, connect checkout to registrations and support administrative validation and manual payment handling.

  2. Event operations

    Give administrators control over participant and race workflows, with tools for result management and imports.

  3. Beyond registration

    Extend the platform into results, standings and post-event functionality as the event’s needs evolve.

A production platform used around a physical event.

The system supported real registrations and online payment flows, bilingual participant access and administrative control over participant and race workflows. Results and standings extended its role beyond checkout.

What this project demonstrates.

Product engineering
Translate operational requirements into software people can use.
Payment workflows
Connect transactions to meaningful registration state.
Administrative systems
Build tools for the team responsible for operating the product.
Production iteration
Adapt the system as real event requirements change.
Security-aware engineering
Treat payment, participant data and administrative workflows as production responsibilities.

Need a product that has to work in the real world?

Let’s turn the operational requirements into a system your team can actually run.

Discuss Your Product →