Cómo ayudamos a Brava a pasar del papel y el boli a una app que recalcula clasificaciones y cuadrantes al momento
Brava
Brava es un torneo de fútbol 7 para alevines y benjamines que reúne a 200 equipos en 11 campos repartidos en 5 sedes de la Costa Brava. Antes, resultados, clasificaciones y horarios iban en papel. Durante cuatro ediciones hemos construido y mejorado su app. Hoy cada resultado que entra recalcula grupos y clasificaciones, los cuadrantes del día siguiente están publicados hacia las 21:00 en lugar de la madrugada, y en la última edición la usaron más de 4.500 personas, con un pico de 1.500 conectadas a la vez sin caídas.

Brava es un torneo de fútbol 7 para las categorías alevín y benjamín. Se juega durante dos fines de semana de septiembre en 11 campos repartidos en 5 sedes de la Costa Brava (Malgrat de Mar, sede principal y de las finales, Calella, Santa Susanna, Canet de Mar y Sant Cebrià de Vallalta) y reúne a 200 equipos. La octava edición se juega en septiembre de 2027.
Lo organiza un equipo muy reducido, liderado por su fundador y sin empleados fijos. Para cada fin de semana de torneo contratan recogepelotas, fisios y personal de apoyo. Dentro del circuito de torneos de fútbol base es uno de los de referencia.
El problema
Trabajamos con dos personas de la organización. El fundador, que habla con los clubes y dirige el torneo, y quién monta los cuadrantes (quién juega contra quién, a qué hora y en qué campo). Los dos sufrían el problema y los dos decidieron hacer la app.
Antes de la app, todo iba en papel. En cada sede, un responsable apuntaba a boli los resultados. Al acabar el día, esas hojas viajaban a la sede principal, donde alguien rehacía a mano grupos, clasificaciones y cuadrantes del día siguiente con los resultados de las 5 sedes. En cada campo, los resultados se colgaban en un cartel enorme, impreso y rellenado a boli.
Ese sistema tenía tres consecuencias:
Cuadrantes del día siguiente de madrugada. Hasta la madrugada nadie sabía a qué hora jugaba al día siguiente. Y jugar el domingo a las 11:00 o a las 20:00 cambia mucho la noche de un equipo y de sus familias, que necesitan saberlo antes de irse a dormir.
Errores que se descubrían tarde. Si un resultado estaba mal apuntado, nadie lo veía hasta tener todos los cuadrantes hechos. Entonces llegaba el "¿por qué he quedado segundo si he ganado?", y tocaba corregir y volver a publicar, ya de madrugada.
Colas delante del cartel y preguntas constantes. Dónde juego, contra quién, de local o de visitante, de qué color viste el rival.
La solución
Qué construimos
Una app para iPhone y Android con los resultados, el calendario y las clasificaciones del torneo. Tiene dos tipos de usuario.
Participantes (jugadores, entrenadores y familias, externos al cliente). Consultan cuándo juega su equipo, contra quién, en qué campo de qué sede, si va de local o de visitante y de qué color viste el rival.
Organización (interna). Mete los resultados desde el móvil. Con cada resultado, la app recalcula grupos, clasificaciones y cuadros de eliminatorias.

Cómo funciona
Entra el resultado. En cuanto acaba el partido, la persona que lleva los resultados lo mete en el marcador del móvil.
La app lo recalcula todo. Al guardar, rehace el grupo entero y la clasificación con puntos, goles a favor, diferencia de goles y desempates.
Los cuadrantes del día siguiente salen solos. Con el último resultado del día, la app ya sabe quién juega contra quién y a qué hora.
Publicación. El equipo de imagen los prepara para Instagram y hacia las 21:00 ya están publicados.

Decisiones técnicas
Primera edición, FlutterFlow y Firebase. Firebase nos dejaba guardar cada partido con su propia forma, con penaltis en las eliminatorias y sin ellos en la fase de grupos. El problema llegó con las clasificaciones. Firebase guarda documentos sueltos, sin relaciones entre ellos, y una clasificación exige cruzar partidos, equipos y grupos. Funcionó, pero costaba mucho mantenerlo.
Segunda edición, cambio a Supabase. Es una base de datos relacional, así que partidos, equipos y grupos están conectados y calcular las clasificaciones es mucho más rápido.
Tercera edición, cálculo automático de las posiciones. Montamos en Supabase un motor que ordena cada grupo en cuanto entra un resultado. En las dos primeras ediciones colocábamos los equipos a mano según los puntos y los goles.
Cuarta edición, de FlutterFlow a código con Claude Code. Seguimos con Flutter y Supabase, pero ahora escribimos el código con Claude Code en lugar de construir en FlutterFlow, y desarrollamos mucho más rápido. Ya no dependemos de la estructura que impone esa herramienta, así que podemos añadir funcionalidades y diseños nuevos que antes no eran posibles.
Prototipo en Figma antes de construir. Los organizadores vieron las pantallas y validaron qué llevaría la app antes de escribir código.
Proceso
Arrancamos con una reunión con los organizadores para entender cómo trabajaban y qué necesitaban. Con eso hicimos el prototipo en Figma y, tras validarlo, una primera versión más sencilla que la actual.
Desde entonces la app crece en cada edición.
Segunda edición. Cambio a Supabase, para calcular las clasificaciones más rápido.
Tercera edición. Pantalla de detalle del partido, con el campo exacto dentro de la sede, para que la gente sepa a dónde ir. Y la app empieza a ordenar sola los grupos, que hasta entonces colocábamos a mano.
Cuarta edición. Rediseño completo y medición del uso.
Próxima. Estamos valorando añadir los vestuarios, la pregunta más repetida durante el día ("¿qué vestuario me toca y dónde está?").

Guardarraíles
Los resultados se meten desde el móvil con batería externa. En las primeras ediciones iban desde un portátil, que se quedaba sin batería en mitad del campo.
Por ahora los resultados los mete una sola persona. Si le llega uno mal, se lo vuelven a pasar por WhatsApp y lo corrige al momento.
Familias y entrenadores ven cada resultado casi al minuto, así que si hay un error se dan cuenta enseguida y avisan para cambiarlo.
Resultados y beneficios
En las primeras ediciones medíamos el uso contando las llamadas que recibía la app, un dato poco fiable porque dependía de cada pantalla. En la última edición mejoramos la medición, y es una de las cosas en las que más hemos trabajado. No hubo campaña, solo un post en Instagram anunciando la app.
Cuadrantes del día siguiente hacia las 21:00 en lugar de la madrugada. El último partido acaba entre las 19:30 y las 20:00, según los retrasos, y una hora después están publicados.
Más de 4.500 personas usaron la app en los dos fines de semana de la última edición, y cada una la abrió de media unas 13 veces al día.
Pico de 1.500 personas conectadas a la vez, sin caídas ni lentitud. Llegó cinco minutos después de publicar los cuadrantes del domingo, en los dos fines de semana, cuando todos miran a qué hora les toca madrugar.
Menos preguntas y errores corregidos en minutos. Cada equipo sabe con quién juega y puede preguntar al rival de qué color viste, para cambiar de equipación si coinciden. Si un resultado entra mal, las familias lo ven, avisan al entrenador, este a la organización y queda corregido.

Llevamos cuatro ediciones con Brava y ya preparamos la del año que viene.
“Persona y profesional muy Top. He trabajado con Adrià en distintos proyectos Web y App y lo recomiendo 100%. Mucha tranquilidad trabajar con él.”
Marc Garcia
Responsable de BravaFootball
¿Tienes un proyecto en mente?
Cuéntanos qué necesitas y te proponemos cómo construirlo con no-code e IA.


