Caso de estudio

Juegos Familiares

Dos juegos, una misma idea: facilitar el encuentro y el juego en persona. Impostor y Tutti Frutti reúnen al grupo alrededor de una partida; cada participante usa su teléfono y la conversación sucede cara a cara.

Dos juegos publicados

Producto, arquitectura e implementación full stack

  • Next.js
  • TypeScript
  • Supabase
  • PostgreSQL

Dos juegos para compartir

Impostor

Palabras, pistas y votación secreta para descubrir quién tiene un rol diferente. Cada persona recibe su información en privado desde el teléfono; las pistas y la conversación se comparten en persona.

Abrir captura de Impostor: palabra y rol privados de un participante de prueba. Abrir captura de Impostor: votación secreta en una sala de prueba.
Información privada y votación desde sesiones independientes. Tocá una captura para ampliarla.

Tutti Frutti

Una letra, varias categorías y respuestas para comparar en grupo. Cada participante completa su ronda desde el teléfono y después revisan las respuestas antes de ver los resultados.

Abrir captura completa de una ronda de demostración de Tutti Frutti, con letra y cinco categorías.
Una misma ronda, con respuestas desde cada teléfono. Tocá la captura para verla completa.

El desafío técnico: mantener la partida sincronizada

Cambios en tiempo real

Supabase Realtime notifica los cambios de la partida a los dispositivos conectados, para que cada participante pueda seguir lo que sucede.

Reglas validadas en PostgreSQL

En Impostor, las acciones protegidas validan identidad, permisos y estado de la partida en el backend o la base de datos. Los roles, votos y resultados no dependen de lo que declare el navegador.

Recuperación de sesión

Tras una desconexión, el cliente de Impostor consulta el estado persistido y autorizado para reconstruir la sesión. Las notificaciones en tiempo real acompañan ese estado, sin reemplazarlo.

Desarrollado y probado en uso

Diseñé los recorridos, las reglas y los estados de cada juego e implementé la plataforma con Next.js, TypeScript, Supabase y PostgreSQL. Cada juego conserva su propia lógica y comparte el acceso a grupos y salas.

La implementación de Impostor incluye pruebas unitarias y de base de datos, validaciones de permisos y operaciones protegidas (RLS/RPCs), y comprobaciones básicas de sincronización.

Pensado para grupos pequeños que se reúnen en persona. Las partidas requieren conexión a internet.