A management platform for a sports league
Designed an end-to-end platform for an amateur sports league — six roles, one connected and auditable workflow from match day to public standings.
Context
Running an amateur league is a logistics problem hiding inside a sport. Fixtures, rosters, scoresheets, suspensions, and disputes lived across spreadsheets and group chats — no shared source of truth, and no chain of custody for decisions. A red card on Saturday might or might not become a suspension next week, depending on who remembered.
This is a personal project, and a special one: the league is run by a friend of 35+ years, so building it meant working with him directly. I set out to design one platform to run the whole league — from a fan checking the table to the tribunal ruling on a case.
My role
I owned design end to end — research, personas, journey mapping, information architecture, interface design, and clickable prototypes.
Research & insight
Based on user and stakeholder interviews, I mapped the league to six roles — fan, player, team delegate, scorekeeper, secretariat, and tribunal — and built personas to keep those needs in front of every decision.
The insight: the hard problem wasn’t any one screen. It was the hand-offs between roles. A scoresheet has to travel from scorekeeper to secretariat to be validated, and a red card has to become a tribunal case — without anything slipping through. That connective tissue was where the league broke down.
Process & decisions
What I built:
- One connected flow — scoresheet → validation → ruling — so every decision has an auditable path from pitch to tribunal.
- A scoresheet for speed and accuracy — a structured table with steppers for goals and cards, the score derived automatically so it can’t be entered wrong. The scorekeeper can also scan the referee’s handwritten paper sheet and the acta fills itself — then review, correct, submit.
- Role-appropriate navigation — a focused back-office layout for secretariat and tribunal, a simpler mobile-first view for fans and players.
- Tested against reality — I prototyped with the league’s actual teams, rosters, and results, so every flow met the messiness of the real thing.
Outcome
The design took the league from “spreadsheets and trust” to a single system with a real audit trail — every sanction traceable to the match that caused it. The proof is in the hand-offs, because that’s where the league used to break: a scoresheet can’t get lost between scorekeeper and secretariat, and a red card can’t fail to become a tribunal case. Because the prototype ran on real data and stayed scoped to what the league actually needed, stakeholders could evaluate the product, not a demo’s embellishments.