Founder · Matt's Volleyball League
Volleyball Engine
Skills exercised
I built Volleyball Engine to run the competition and money behind Matt's Volleyball League. Off-the-shelf Teamlinkt handles registration and rosters; Volleyball Engine handles everything it does not: scheduling, tournaments, live scoring, and payouts. It is a Next.js + TypeScript application deployed to Cloudflare Workers via OpenNext, with staging, production, and automated deploys.
What it does
- Season schedule generation Turns registration data into full season schedules that get imported into Teamlinkt each season.
- Six tournament formats Bracket generation and management for in-league playoffs and standalone tournaments, including a Swiss pairing algorithm with teammate-penalty scoring that avoids repeat pairings while balancing match quality.
- Mix-and-match scoring An in-league playoff format that pairs players across teams.
- Real-time live scoring Scores update live over Supabase realtime subscriptions.
- Role-based access control Different capabilities for admins, officials, captains, and players.
- Revenue split / payout calculator Computes each contractor's percentage of season revenue to drive 1099 payouts.
Tournament algorithms
The interesting engineering is the pairing and drafting logic: the Swiss format with teammate-penalty scoring, plus custom shuffle-format and balanced-team draft generation as standalone TypeScript modules. The constraint throughout is balancing skill across teams while keeping the experience fun for casual players and competitive for serious ones.
Testing and deployment
Tested end to end with Playwright and unit-tested with Vitest. Staging and production environments on Cloudflare Workers with automated deploys.
What it demonstrates
- Full-stack product engineering: Next.js, TypeScript, React, edge deployment on Cloudflare Workers, a Postgres data layer with realtime subscriptions.
- Non-trivial systems design: tournament logic, Swiss pairing with penalty scoring, schedule generation, mix-and-match scoring, and a revenue model that pays real people.
- Testing discipline on a solo project: E2E and unit coverage, staging/production separation.
- Vendor judgment: chose Teamlinkt for registration and rosters, reserved the custom build for the parts where off-the-shelf fell short.
This is the software half of the league. The public site, brand system, and communications automation live in the Matt's Volleyball League write-up.