Note
This project was created with assistance from AI. Requirements, architecture decisions, deployment and security were manually reviewed by me, a human.
Build notes live in a separate post. The live app is not on this blog — a static site cannot run it — but there is a canned replay further down.
What it does
Closed beta, minimum viable set:
- Create a pool with custom formats, buy-ins, and tie-breakers
- Randomized snake draft order, with a live draft room
- Real-time leaderboards pulling live ESPN scores
- Automatic CUT tracking to assign penalties or bonuses
- Runs natively in Discord or on the web app
Pools typically run through the sequence below:
The infrastructure currently runs on my homelab, comprised of Next.js, Fastify, PostgreSQL, and Discord.js, packaged in a Docker container and deployed through a secure tunnel.
Highlights
Below are some screenshots of various features.
Web app pool list: Travelers is on the clock; a completed Tour Championship sits below.
Same draft in Discord: the bot posts who’s on the clock, the latest pick, and a link back to the web room.
Try the replay
Canned snake draft, six named members, real 2026 Open Championship cards from Royal Birkdale. Step through or autoplay the draft, then view the scoring snapshots. Debbie suffers the 2x CUT penalty.
Open the fixture (click to expand)
The replay is a museum label with buttons — not the live room. Open it full page if the embed is cramped.
What’s next?
Planned 2027 update with dedicated hosting, more formats, and a few more features to drive enagement on Discord.
Want a note when that ships? Email only — not a list for other projects.