Skip to content
Voir en français
Racing simulator booking platform

E-motion

Racing experience platform for booking simulator sessions, managing packs and subscriptions, and delivering a smooth online journey for motorsport fans.

E-motion interface
  • Next.js
  • React
  • TypeScript
  • NestJS
  • Datadog

Context

E-motion runs racing simulator centres and needed to move bookings, session packs, and subscriptions off spreadsheets and phone calls onto a self-service platform its customers could use from a phone.

The challenge

Simulator slots are a scarce resource: two people must never end up on the same rig at the same time, and pack credits have to stay consistent even when a booking is cancelled or moved. The booking flow also had to stay fast on mobile, where most sessions are actually reserved.

What I built

  • Built the customer-facing booking journey in Next.js and React with TypeScript end to end, from slot selection through to confirmation.
  • Designed the NestJS API around sessions, packs, and subscriptions, keeping credit accounting and availability in one authoritative place.
  • Modelled availability so concurrent bookings cannot double-allocate the same simulator slot.
  • Instrumented the platform with Datadog so booking errors and slow endpoints surface before customers report them.
  • Tuned the front end for Core Web Vitals: server rendering, image optimisation, and a booking flow that stays responsive on mobile networks.

Outcome

Customers book, renew, and manage their own sessions online, and the team gets a single view of availability and revenue instead of reconciling bookings by hand.