Hice OsoParty para jugar en grupo, cada persona con su teléfono. Alguien abre una sala, comparte un código de seis caracteres o un enlace de invitación y el resto entra desde su navegador. No hay que crear cuentas ni instalar aplicaciones.
Jugar OsoPartyAbre el juego y crea una sala para tu grupo
Cuatro juegos
El mismo grupo puede ir cambiando entre cuatro juegos:
- CapyTrivia: elige temas y responde preguntas de alternativas; después se revela quién eligió cada respuesta.
- LoroStop: completa categorías con una letra compartida, di Stop y vota sobre las respuestas del grupo.
- DibuPudú: por turnos, dibuja una palabra secreta mientras el resto intenta adivinarla. Las respuestas correctas más rápidas ganan más puntos.
- MichiSus: comparte pistas, conversa sobre quién parece sospechoso y vota para encontrar al impostor sin revelar la palabra secreta.
Quien organiza puede proteger la sala con una contraseña u ocultar el código al transmitir. El chat acompaña las partidas y el modo Infinito permite votar qué jugar después. Un editor de packs admite contenido propio, importación y exportación, para jugar con las preguntas y palabras del grupo.
Mantener la sala sincronizada
Hice el cliente en React, TypeScript y Vite, los motores de juego compartidos y el servicio multijugador en Cloudflare Workers. Cada sala tiene su propio Durable Object, al que se conectan los jugadores mediante WebSockets.
Las reglas de los juegos están en paquetes deterministas de TypeScript que se ejecutan tanto en el navegador como en el servidor. No acceden al DOM, no abren conexiones y no manejan sus propios relojes. La aplicación se encarga de esos efectos, lo que permite probar las reglas sin un navegador y evita mantener una implementación distinta para cada entorno.
El servidor aplica las acciones y envía a cada persona solamente su propia vista del juego. Los roles secretos y las respuestas todavía no reveladas quedan fuera de los datos que reciben los otros jugadores. Los trazos se envían al grupo mientras las respuestas, los temporizadores y los puntajes siguen funcionando.
Idiomas y datos de la partida
OsoParty admite español, inglés y portugués de Brasil. Cada persona elige el idioma de su interfaz, mientras quien organiza selecciona por separado el idioma de las preguntas y palabras. Así se puede compartir una sala sin exigir que todos los teléfonos usen la misma interfaz.
Las partidas, los dibujos y el chat se mantienen en la memoria de la sala, sin convertirse en un historial guardado. El dispositivo puede recordar un nombre y un borrador del editor de packs; esas preferencias están separadas del estado de la partida.
Animación, sonido y pruebas
La interfaz usa Motion con soporte para movimiento reducido, dibujo en canvas y efectos mediante Web Audio. Hice los sonidos con Nielo SFX.
Vitest prueba las reglas, Playwright cubre los flujos multijugador y axe comprueba aspectos de accesibilidad. Las pruebas cubren el estado compartido entre los teléfonos y la información que recibe cada jugador.

