Prode Mundial 2026
🏆 Hackathon winner
FIFA World Cup 2026 prediction app with a real-time leaderboard, automatic scoring and an AI assistant.
- Role
- End-to-end development
- Year
- 2026
- Status
- Winning project
- Client
- Taligent · internal hackathon
- 🏆
- winning project
- 104
- matches
- 2 min
- sync cycle
- Realtime
- live leaderboard
Overview
Winner of Taligent's internal hackathon. A full-stack web application where users predict the results of all 104 FIFA World Cup 2026 matches, earn points based on how accurate their predictions are and compete on a leaderboard that updates in real time. The challenge was to build a functional product deployed to production, consuming a match API provided by the organisers.
Context
The problem
A World Cup prediction game has four concrete technical problems: official results change during the tournament, scores must be recalculated only when a match ends, nobody should see other people's predictions before kick-off, and entering 104 predictions by hand is tedious.
The solution
Each problem solved by a specific piece: a scheduled job syncing matches every 2 minutes, an idempotent scoring pipeline triggered by that sync, Row Level Security in Postgres making predictions public only once the match is over, and an AI assistant that suggests a result and pre-fills the form in one click.
What it does
Automatic result syncing
A scheduled job queries the official API every 2 minutes and updates matches and results with no intervention.
Idempotent scoring engine
Scoring is triggered by the sync and can run multiple times over the same match without duplicating points.
Privacy through Row Level Security
Predictions are invisible to everyone else until the match ends. The rule lives in the database, not in the application.
AI prediction assistant
It suggests a likely result and pre-fills the form, cutting 104 predictions down to a handful of clicks.
Live leaderboard
A Realtime subscription to Postgres: the standings reorder themselves without refreshing the page.
Technical decisions
- 01
RLS instead of application-level filtering
The rule “nobody sees other people's predictions before the match” is both a business and a security rule. Putting it in the database guarantees no badly written endpoint can bypass it.
- 02
Idempotency as a requirement, not an optimisation
With a sync every 2 minutes and results that can be corrected, the scoring pipeline had to be re-runnable without cumulative effects.
Stack
Frontend
- React
- TypeScript
- Realtime subscriptions
Backend / Data
- PostgreSQL
- Row Level Security
- Jobs programados
- Pipeline de scoring
Auth
- Google Sign-In
AI
- Asistente de sugerencia de resultados
Next project