The challenge
The challenge
Keep drawings, guesses, scores, and room events synchronized across several players while handling slow networks, disconnects, and rejoining.
Project case study
Guess Drawing is a multiplayer game where people take turns drawing and guessing in public or private rooms. It combines a responsive mobile experience with a backend responsible for live state and player connections.
Get it on Google Play ↗The challenge
Keep drawings, guesses, scores, and room events synchronized across several players while handling slow networks, disconnects, and rejoining.
The engineering approach
Clear boundaries between native clients, REST APIs, and WebSocket channels. The server owns room truth while clients render changes as soon as events arrive.
From source to production
Spring Boot and MySQL run behind Caddy in Docker on AWS, with HTTPS, secure WebSockets, health checks, and a rollback-aware deployment flow.
Technical architecture
Native experiences for drawing, guessing, voice, and room management.
Game rules, sessions, REST APIs, and real-time event coordination.
Low-latency drawing strokes, guesses, and room events.
Docker, MySQL, Caddy, and TLS on AWS.
What the project demonstrates