Problem
A 2D virtual meeting platform needed collaborative drawing capabilities for its users.
Constraints
Had to integrate into the existing Covey.Town codebase without breaking existing features and have it deployed.
Hypothesis
Using the Tldraw library combined with WebSocket synchronization would allow real-time multi-user drawing without latency issues.
Process
- Set up WebSocket server for real-time state synchronization across clients
- Integrated Tldraw backend into the existing Covey.Town architecture
- Implemented autosaving and autoloading of whiteboards via SQLite
- Configured CI/CD pipeline with GitHub Actions to deploy to an AWS EC2 instance
Solution
Deployed to AWS EC2 — users could collaboratively draw in real time and return later to find their work saved.
Metrics
- No visible latency with 5 concurrent users drawing simultaneously
- Persistent storage: whiteboard state survives page reloads and reconnections
- Automated deployment via GitHub Actions CI/CD pipeline
Evidence
Lessons Learned
Learned how to deploy a web service to the cloud and work with WebSockets for handling real-time state management across multiple clients.