All work

Case study

myRaceReel.

Cameras on the course, and a film for every runner who crosses the line.

Role
CTO & Co-founder
Type
AI · Computer vision · Platform
Timeline
2025 to now
Stack
Next.js, React, TypeScript, Node.js, MongoDB, Python, PyTorch, YOLO, PaddleOCR, FFmpeg, Kotlin, Gemini, Stripe
Live
Visit site ↗

What people see. Switch to Structure for what runs it.

The new myRaceReel home page: Every runner. Their own film.

myRaceReel puts cameras on a race course and sends every participant a personalised video of their own race, in the event's look and with its sponsors on board. As CTO and co-founder I built the whole system: the capture app, a computer-vision pipeline that finds each runner by their bib, the platform that delivers the videos, and the dashboards organisers and sponsors use.

01

Phones as race cameras

A custom Android app turns phones into race cameras. Footage uploads in one-minute chunks straight to storage while the race is still running, every chunk is checked on arrival, and organisers can watch each camera's status live from their dashboard.

02

Finding every runner

A staged computer-vision pipeline detects and tracks every person, reads race bibs with an OCR model fine-tuned on thousands of labelled bibs, and re-identifies runners from one camera to the next. Finish times are measured to a fraction of a frame and checked against the official results; anything that disagrees goes to a review queue, not to the runner.

03

A film for every finisher

Each runner gets a portrait clip built around their finish, with their name, bib and time in the event's design, cut straight from footage in storage. They find it by bib, then watch, download and share it, with a preview card made for every share; it reaches them by email or WhatsApp, free or paid through Stripe.

04

A page builder for every event

Organisers design the event page and every runner's video page in a visual builder: start from a ready-made design or from scratch, preview it for desktop and phone, and embed it on their own website. The same builder designs sponsor ads.

05

Analytics that prove the reach

Organisers see every number that matters to them and their sponsors: views, how far people watch, downloads, shares by channel, the visitors each shared link brings back by country and device, and how runners' reels perform on Facebook.

06

Sponsors, with AI that knows its limits

Sponsors reach runners with an ad before the video, targeted by finish time, age, race or even the shoes they ran in. Gemini drafts versions inside our tested layouts; the sponsor's links, codes and images never come from the model, and a person approves every draft before it goes live.

07

One set of cameras, three products

The same footage powers myRaceReel for runners, myRaceTiming for timing providers who need to settle a missing or disputed result with evidence, and myRaceInsights for brands: what the field wore and ran in, down to the shoe model.

08

Private and lean by design

The vision side never sees a name or an email, only an anonymous reference linked to a bib; faces are used only with consent, and insights describe the field, never a person. GPUs are rented per event and switched off in between, and detection slows down whenever the course goes quiet.

Next projectLuminous