← Blog

10 DE JUN DE 2026es5 MIN DE LECTURA

Creando un prode para la Copa del Mundo 2026 con IA

#building-in-public#ai#side-project

El Mundial 2026 empieza el 11 de junio. Hace unos días me di cuenta de que no teníamos ningún prode armado entre amigos y familia.

La solución obvia era usar alguna app existente. Hay varias. Pero decidí construir la mía propia, usando Claude Code como asistente principal. No porque sea más fácil, sino porque quería experimentar con el flujo de trabajo de construir algo real con IA y documentarlo acá.

Este es ese documento.

Qué es un prode, para los que no saben

Un prode es una competencia de predicciones deportivas. En el contexto del Mundial: cada participante predice el resultado de cada partido. Al final de cada fecha, los que acertaron suman puntos. Gana el que más puntos acumula.

La mecánica básica es simple. La complejidad aparece cuando empezás a pensar en los detalles: ¿qué puntaje vale acertar el resultado exacto versus solo el ganador? ¿Cómo se manejan los empates? ¿Y la fase de grupos versus eliminación directa?

El stack

Decidí usar lo que ya conozco bien:

  • Next.js para el frontend
  • Supabase para la base de datos y autenticación
  • Claude Code como asistente de desarrollo

La parte interesante es cuánto del trabajo hizo Claude Code directamente. No solo sugerencias o completado de código — escribió esquemas de base de datos completos, generó las queries, armó los componentes de UI, y encontró bugs que yo no veía.

La página de pronóstico

La interfaz principal es donde cada usuario ingresa sus predicciones para cada partido. Tenía que ser rápida de completar — nadie quiere pasar 20 minutos haciendo pronósticos antes de cada fecha.

Página de pronóstico Página de pronóstico

La solución fue mostrar todos los partidos de una fecha en una sola página, con selección rápida de resultado (1, X, 2) y opción de ingresar marcador exacto si querés más puntos.

El árbol de resultados

Una de las partes más visuales es el bracket de la fase eliminatoria. A medida que se van dando los resultados reales, el árbol se actualiza y muestra cómo quedaron las predicciones de cada usuario contra lo que realmente pasó.

Árbol de como se van dando los resultados Árbol de resultados — cómo se van dando los cruces ronda a ronda

Esto fue de los fragmentos más complejos de implementar. El problema no es dibujar el bracket — es mantener el estado sincronizado entre los resultados reales y las predicciones de cada usuario.

Ligas privadas

El caso de uso principal que tenía en mente era jugar con amigos y familia. Para eso necesitaba ligas privadas: vos creás una liga, compartís un link o código, y los demás se unen.

Podés crear tu propia liga y compartirla con amigos Creá una liga y compartila con quien quieras

Cada liga tiene su propia tabla de posiciones. Podés estar en múltiples ligas al mismo tiempo — útil si querés jugar con amigos y también con compañeros de trabajo.

Las reglas de puntuación

Un prode sin reglas claras termina en discusión. Definí el sistema de puntos antes de escribir una línea de código y lo puse visible dentro de la app.

Reglas Sistema de puntos visible dentro de la app

El sistema que elegí:

  • Acertar el ganador (o empate en fase de grupos): 1 punto
  • Acertar el resultado exacto: 3 puntos
  • Fase eliminatoria tiene multiplicadores

Simple, sin sorpresas.

La tabla de posiciones

La tabla muestra el ranking dentro de tu liga, con puntos acumulados, partidos acertados, y resultados exactos. Se actualiza automáticamente cuando se cargan resultados nuevos.

Exportar resultados

Es posible exportar en una imagen los resultados de la fase de grupos, las llaves y el árbol desde octavos de final en adelante.

Cuadro exportado Exportación del cuadro completo — grupos, llaves y árbol eliminatorio

Útil para compartir cómo quedó tu predicción en WhatsApp o Instagram sin tener que hacer capturas de pantalla de cada sección por separado.

Premios individuales

Además de predecir partidos, los usuarios pueden votar por los premios individuales del torneo: balón de oro, bota de oro, guante de oro y mejor jugador joven.

Votación de premios individuales Votá por los ganadores de los premios individuales del Mundial

Estadísticas

Una vez avanzado el torneo, es posible ver qué porcentaje de los usuarios votó a cada país para pasar a la siguiente fase, hasta llegar a ser campeón. Una manera rápida de saber qué tan consensuadas —o controvertidas— son las predicciones de tu liga.

Estadísticas de clasificación por país Porcentaje de votos por país en cada ronda, hasta el campeón

Y para los premios individuales, el desglose de cuántos usuarios eligieron a cada jugador.

Jugadores más votados para premios individuales Ranking de jugadores más votados para cada premio individual

Mi campeón

Yo predije que Argentina llega a la final. No voy a decir contra quién ni el resultado, porque si lo escribo acá y no pasa voy a tener que editar este post.

Lo que aprendí del proceso

Claude Code es particularmente bueno en código repetitivo con estructura clara. Los esquemas de Supabase, las queries, la lógica de puntos — todo eso lo generó bien a la primera o con una corrección mínima.

Es un poco menos preciso cuando el contexto es ambiguo. Cuando le explicaba "quiero que el bracket se actualice en tiempo real", generaba algo funcional pero no exactamente lo que tenía en mente. Tuve que ser más específico: "quiero que cuando se cargue un resultado en la tabla match_results, el componente BracketView se re-render con los datos nuevos sin reload".

El back-and-forth es el flujo real. No es "describí lo que querés y Claude lo construye". Es un ciclo: generás algo, lo probás, encontrás que falta algo o está mal, refinás el prompt, repetís. Más parecido a pair programming que a dictar código.

El prode está live en prode-mundial-2026-xi-seven.vercel.app. Entrá, creá una liga y mandásela a tus amigos.

Más pronto.