Challenge
A shared whiteboard needs edits from multiple people to stay in sync while preserving the board state between sessions.
Opening workspace
loading portfolio modules...
Real-time Collaborative Whiteboard
A collaborative whiteboard for simultaneous multi-user canvas editing, with real-time WebSocket synchronization and persistent board state.
Context & approach
Challenge
A shared whiteboard needs edits from multiple people to stay in sync while preserving the board state between sessions.
Approach
Built a custom canvas rendering engine, synchronized canvas changes over WebSockets, and persisted whiteboard state in PostgreSQL.
System map
Follow a representative collaboration path: a user's canvas change is synchronized to another client, rendered by the custom canvas engine, and retained as board state.
Tap a node · Swipe to explore
Real-time transport
WebSockets synchronize canvas changes between connected participants.
Engineering notes
WebSockets carry canvas synchronization for simultaneous multi-user editing.
A custom canvas engine renders the geometric shapes used on the collaborative board.
PostgreSQL stores whiteboard state so the shared work is backed by durable data.
Built with