World Cup Pool 2026

Five coworkers, 48 teams, one trophy

June 2026, Active worldcup.nbnstack.com

Overview

World Cup Pool 2026 is a full-stack web app that runs a live pool for five coworkers during the 2026 FIFA World Cup. The 48 national teams are split across the players, every match scores itself, and a live leaderboard shows who is winning and who is likely to win once the rest of the bracket plays out.

It was built entirely with Claude Code over the first two days of the tournament, while matches were already being played. The pool needed to exist before the group stage got away from us, so the constraint was simple: get something real and self-scoring online fast, and let the live data do the rest.

What It Does

  • Tiered snake draft: The five players snake-drafted all 48 teams from FIFA-ranking tiers, each tier carrying its own point multiplier so favorites and long shots both pay off. Draft order was settled the only fair way — five Level 9 CPUs fighting it out in Super Smash Bros.
  • Automatic scoring: Match results pull from ESPN's public API, so there is no manual data entry. Points are calculated through every stage, with escalating base points as the tournament moves into the knockout rounds.
  • Win probability: A Monte Carlo simulation runs 5,000 iterations of the remaining tournament to estimate each player's chance of winning the pool, refreshing every five minutes with a live animated visualization.
  • Live match clock: Scores update in real time with an accurate match clock, including stoppage time.
  • Pre-match odds: Each upcoming match shows win probability bars sourced from DraftKings odds via ESPN.
  • Mobile-first: Responsive design built to be checked from a phone during a match.

Tech Stack

Backend Django 4.2, with the scoring engine driven by ESPN's public API
Frontend React 18, built with Vite
Database PostgreSQL
Simulation Monte Carlo win-probability engine, 5,000 iterations refreshed every five minutes
Infrastructure Docker Compose, Cloudflare Tunnel for TLS termination