
Juegos Familiares
Plataforma de juegos presenciales para compartir en grupo, con Impostor y Tutti Frutti.
Dos juegos publicados · Impostor: más de 100 partidas familiares
- Problema
- Facilitar juegos presenciales donde cada participante usa su teléfono para jugar en grupo.
- Aporte
- Diseño e implementación de Impostor y Tutti Frutti en una plataforma web mobile-first.
- Decisión clave
- Mantener las reglas y los estados de cada juego independientes, con capacidades de plataforma donde son compartidas.
La plataforma
Juegos Familiares reúne experiencias presenciales para grupos pequeños. Cada persona participa desde su teléfono y comparte la conversación cara a cara con el grupo.
La portada ofrece dos juegos: Impostor, basado en roles y votación secreta, y Tutti Frutti, basado en categorías y respuestas por ronda. Ambos requieren que las personas estén en un grupo y se conecten a una sala para jugar.
Impostor
Cada participante recibe en privado una palabra o un rol, conversa y da pistas, vota y ve el resultado. Una persona crea una sala temporal y comparte un código o enlace. La sesión conserva las rondas, palabras utilizadas y puntuación.
El ciclo incluye:
- crear o unirse a una sala;
- revelar en privado la palabra o el rol;
- conversar y dar pistas presencialmente;
- votar de forma secreta;
- resolver un desempate cuando corresponde;
- permitir el intento final del impostor descubierto;
- mostrar el resultado y la puntuación;
- iniciar otra ronda o cerrar la sesión.
Tutti Frutti
Tutti Frutti suma un segundo juego presencial a la plataforma. El grupo crea o abre una sala, configura la partida, responde categorías por letra y revisa las respuestas antes de comparar resultados.
Mi aporte
Diseñé las reglas, estados y recorridos de cada juego, y desarrollé sus experiencias mobile-first. Impostor incluye identidad, grupos, salas, privacidad, sincronización, recuperación de sesión y PWA. Tutti Frutti tiene su propio flujo de configuración, respuestas y revisión. La plataforma usa Next.js, Supabase y PostgreSQL.
Decisiones de producto y arquitectura
Autoridad en Postgres
El navegador no certifica roles, votos, resultados ni transiciones sensibles. Las operaciones protegidas validan identidad, permisos y estado previo en backend o base de datos.
Realtime notifica, no autoriza
Realtime y Presence notifican cambios, pero no reemplazan el estado persistido. Tras una reconexión, el cliente consulta una vista autorizada y reconstruye la sesión.
Reglas propias para cada juego
Impostor y Tutti Frutti conservan sus reglas, estados y ciclos de partida. La plataforma comparte la entrada a grupos y salas sin convertir sus diferencias en un motor genérico.
Interacción presencial
Los teléfonos gestionan preparación, participación y resultados. La conversación ocurre entre las personas reunidas.
Uso, calidad y límites
Impostor fue usado en más de 100 partidas con grupos familiares. Esas sesiones permitieron corregir textos, recorridos y comportamientos multi-dispositivo. Tutti Frutti se incorporó después como un segundo juego; no se le atribuye ese historial de uso.
La implementación de Impostor incluye pruebas unitarias y de base de datos, validaciones de RLS/RPCs y pruebas básicas de sincronización. Los juegos requieren conexión. La plataforma prioriza grupos pequeños y conocidos; no ofrece matchmaking, chat, perfiles públicos, ranking global ni partidas remotas.