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
Render's free plan can take ~1 minute to wake up.
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.
Solution
Real-time multiplayer game with public or private matchmaking (link/QR), simultaneous rooms, server-validated turns and rules, and per-game isolated state.
Technical decisions
Per-match locks
They prevent several operations from modifying the state of the same match at the same time in incompatible ways.
My role
Complete development — event-driven architecture, WebSockets, state synchronization, concurrency, automated tests and deployment.
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