Follow the 2026 FIFA World Cup in one place — a live bracket and group tables, three interactive maps, match-day weather, a live score ticker, a Golden Boot tracker, and a form-aware Elo prediction engine — with a steerable projected bracket and an AI pundit panel — all shown in your device's local time.
Built with Flask + vanilla JS and Leaflet — no heavy front-end framework.
Round of 32 → Final in FIFA's two-pathway layout, with feeder group tables alongside. Slots resolve as results land.
All 12 groups with live points, GF/GD and full FIFA tiebreakers — top-2 and in-contention thirds highlighted.
A day slider lights up each day's venues with country-flag pins and click-through match detail.
Trace any team's journey with date-gradient pins, gradient path lines, directional arrows and per-match kickoff weather.
Live radar, isobars and advisories; temperature + precipitation forecasts; historical conditions for past games. °F/°C toggle and a national heat map.
When a match is in progress, the live score — and the minute of play as of the last check — shows up on every page, refreshed every 5 minutes.
An Elo Monte-Carlo simulator — with form-adjusting ratings and a Dixon–Coles draw model — projects title odds, qualification odds and a single consistent projected bracket, depth-selectable from R32 to the Final.
Steer the projected knockouts: click any team to force it through, and the bracket re-walks every slot it feeds — play out your own what-if run, then reset in one tap.
The top-scorer race — penalties count, own goals don't — with a projected whole-goal range of additional goals scaled by how far each striker's team is simulated to go.
Team ratings start from a prior and adapt to in-tournament results — a live board of the biggest risers and fallers.
Every projection is explained: an in-app popup documents the Elo, Poisson goals, draw correction and Monte-Carlo — assumptions and limits included.
A MiroFish-inspired panel of Claude personas debates the race, grounded in the model's numbers — with built-in cost controls.
The dashboard grew in self-contained rounds, each shipped onto the live deployment.
Schedule, teams, groups and venues seeded from openfootball; a 15-minute cron pulls scores, recomputes standings and resolves the bracket. Bracket, groups and daily map go live.
Live score enrichment wired into the updater, keeping the keyless fallback intact.
Pins show the two competing nations' flags; time, stadium and stage on click.
Pick teams from a checklist and plot their matches, color-coded by date.
Gradient path lines, directional arrows and whole-pin date coloring.
Live conditions for today's games, forecasts ahead, and historical weather for matches already played.
°F/°C toggle, a national temperature heat map, a numeric legend, plus humidity and dewpoint.
In-progress scores surface on every page.
Thousands of simulations project title odds and a likely bracket, with an Actual/Projected toggle and depth selector.
Claude personas debate the race, grounded in the stats, with daily/monthly caps and a reserve to protect the shared key.
The projected bracket became internally consistent — no team in two places at once — with a popup documenting the whole model for review.
A Dixon–Coles draw correction for realism, and dynamic Elo that adapts to results — surfaced as a Form tracker of risers and fallers.
Kickoff times and the "today" schedule now follow each device's own timezone.
In Projected mode, click any team to force it through its match — the bracket re-walks every slot it feeds, so you can play out what-if runs. Resolved Round-of-32 teams are pickable too, with a lock badge and a one-tap "Reset picks". Per-slot confidence stays the honest simulation marginal.
A top-scorer race off the keyless goals feed — penalties count, own goals don't — flagging everyone within two of the lead as in contention. Each contender gets a projected whole-goal range of additional goals, scaled by how deep their team is simulated to go. Re-rank by current goals or projected finish.
The follow-a-team map now shows each match's kickoff weather too — actual conditions for games played, forecast for those upcoming — sharing one formatter with the daily map.
Live scores refresh every 5 minutes, and the ticker shows the minute of play as of the most recent check — football-data's own minute when present, otherwise estimated from kickoff.
Lightweight by design, running directly on a DigitalOcean droplet.
Live scores via football-data.org (free tier, slightly delayed) with a keyless openfootball fallback. Elo ratings start from an early-2026 snapshot and update from in-tournament results. AI pundit takes are model-grounded commentary — entertainment, not predictions of record.