Skip to content
Brayhan Escobar
← Back to home

Adivina Quién Web

Real-time multiplayer game with simultaneous rooms, server-validated turns and rules.

It started as a course project and later became a personal project.

Type
Academic (individual)
Status
Deployed
Year
2025
Role
Complete development
Stack
  • Python 3.10+
  • Flask
  • Flask-SocketIO
  • threading (locks por partida)
  • JavaScript
  • HTML5
  • CSS3
  • qrcode.js
  • unittest
  • Render
View live demo ↗

Render's free plan can take ~1 minute to wake up.

01

Problem

Build a real-time multiplayer game where several simultaneous matches stay consistent: the server validates rules and turns, and each match has its own state.

02

Solution

Real-time multiplayer game with public or private matchmaking (link/QR), simultaneous rooms, server-validated turns and rules, and per-game isolated state.

03

Technical decisions

Per-match locks

They prevent several operations from modifying the state of the same match at the same time in incompatible ways.

04

My role

Complete development — event-driven architecture, WebSockets, state synchronization, concurrency, automated tests and deployment.

05

Links

  • Demohttps://juego-adivina-quien-web.onrender.com/

    Render's free plan can take ~1 minute to wake up.

  • Repositoryhttps://github.com/Brayhan23/juego-adivina-quien-web