Twirlmate
Contest Schedule Builder: From 15 Hours to 5
Overview
I researched, designed, and built a highly automated, user-centered contest schedule building wizard for the sport of baton twirling, eliminating 170 hours of manual data entry across 7 contests for 4,000 performances.
Where: Twirlmate / 2025
My Role: As the sole researcher, designer, and developer, I owned everything from user discovery through launch.
The ProblemBaton twirling contests are logistical nightmares
Contest organizers were spending 15+ hours building schedules in Excel. They'd manually add every contestant name, sort them into divisions, assign performance slots, then check for issues one by one. Find a conflict? Start over. Last-minute registration? Rebuild the whole thing.
I built Twirlmate to solve this, a Django/Vue platform for contest management. The hardest problem I solved was automated schedule generation.
The ChallengeContest scheduling is full of constraints
While interviewing 3 event organizers about their contest management workflows and pain points, I discovered that scheduling was the most complex and time-consuming step.
Interviewees also completed a survey, which told me how much time they were spending on scheduling, and where in the process they had the most trouble:
I proceeded by mapping out the system. Only then could I design the interface and the logic behind it.
The SolutionSchedule-generation wizard
I designed a schedule wizard that walks organizers through configuration, then generates conflict-free schedules automatically.
The interface lets organizers define their contest structure: how many divisions, which event types, venue constraints, and spacing rules.
It's complex but not overwhelming—organizers configure once, then the system handles the rest.
The backend logic is where the real work happens. The algorithm:
Assigns performance order to contestants
Detects conflicts (someone performing too recently)
Skips conflicting contestants initially
Auto-inserts spacing ("byes") based on contest rules
Circles back to place skipped contestants with proper gaps
Bulk-creates all performances in a single database operation for speed
From there, the event organizer fine-tunes the schedule, resolving any remaining conflicts and handling last-minute changes. The result: 15 hours of manual work reduced to 3 hours.

The Impact7 contests. 4K performances. $82K in revenue.
Three organizations now use Twirlmate for their contests. The platform has scheduled 4,000 performances and generated $82,000 in revenue.
Organizers call it the "quickest state contest to date." One told me she couldn't believe how fast setup was compared to the spreadsheet chaos she'd been doing for years.
The schedule builder was the technical unlock that made everything else possible. Once organizers trusted the platform to handle their hardest problem, they adopted the rest: registration, tabulation, results publishing.