Skip to main content
LiveCanvas turns solo brainstorming into multiplayer teamwork. Convex realtime subscriptions push updates instantly, so you see teammates cursors, whiteboard strokes, and document edits as they happen. No page refresh required.

Real-Time Multiplayer

When you open a whiteboard or document inside a shared workspace, LiveCanvas subscribes to the file data over a persistent WebSocket connection. Any change made by one user is broadcast to all connected clients through Convex.

Live Cursor Presence

As teammates move their cursors across the infinite whiteboard or document editor, you see colored cursors with their names in real time. Presence data is managed through Convex so there is no need for a separate presence service.
Cursor presence is workspace scoped. Only members of the same team see each other inside shared files.

Simultaneous Editing

Multiple users can draw on the same whiteboard or edit the same document at the same time. Because Convex handles optimistic updates and conflict resolution server-side, edits merge cleanly without overwrites or lost changes.

How Convex Powers the Sync

Convex acts as both the database and real-time backend:
  • Queries: The frontend subscribes to a file record. When the record changes, Convex pushes the new data.
  • Mutations: Drawing or typing triggers a mutation. Convex commits the update and broadcasts to subscribers.
  • Subscriptions: WebSocket connections keep all clients in sync with minimal latency.
This means LiveCanvas does not need separate socket.io or polling logic. The realtime behavior is built into the Convex queries you already write.

Next Steps

Whiteboard

Learn how to draw and navigate the infinite canvas.

Workspaces

Learn how to create teams and manage shared files.