All work
Polla Mundialista
2026 World Cup predictions: 104 matches and a bracket that resolves itself with FIFA's exact rules.
✦✦

MEX 2-1 RSA · your pickEXACT +5 points


The project
Users predict group-stage scores and the system does the rest: computes standings with official tiebreakers (points, goal difference, goals, fair play), assigns the 8 best third-place teams respecting FIFA's Annex C via backtracking, and builds the full knockout bracket. Per-stage scoring with multipliers and live badges.
What it does
- 5 sequential stages: groups → R32 → R16 → quarters → semis/final.
- Automatic bracket: a single source of truth: your scores.
- Live results and a leaderboard after lockout.
- Verified data against the official FIFA calendar with Playwright.
How it was built
Frontend
No-build JSHTML/CSS“Dark pitch” theme
Backend
Supabase · PostgresRLSBeacon API
QA
PlaywrightCustom dev serverFlagcdn
Scores→computeStandings()→bestThirds()→resolveBracket()
Connections & integrations
- Supabase — predictions, profiles and results with RLS
- Vercel — static site with cleanUrls and caching
- Playwright — verification against FIFA.com
- Persistence — localStorage + debounced cloud + Beacon on close
Method
A strategy doc weighing 3 design options before coding · immutable state after submitting · dual persistence so nothing is lost, even closing the tab.