Banner Studio

Real-Time Collaboration

Multi-user editing with live cursors, soft layer locking, presence indicators, and version history — powered by Durable Objects.

01

Live Cursors

See other editors' cursors moving across the artboard in real time. Each collaborator gets a unique colour with their name displayed next to their cursor. Cursor positions are relayed via a Durable Object WebSocket at 12fps (83ms throttle) for smooth movement without excessive bandwidth. Stale cursors from disconnected users are cleaned up after 5 seconds.

02

Soft Layer Locking

When you select a layer, it is soft-locked to prevent conflicting edits. Other collaborators see a coloured dashed border around the locked layer with the editor's name badge. Attempting to select a locked layer shows a toast warning rather than blocking — the lock is advisory, not hard. This prevents frustrating edit conflicts while keeping the workflow flexible.

03

Live Layer Sync

Layer additions, removals, property changes, and reorderings are broadcast to all connected editors instantly. When your colleague adds a new text layer, it appears on your artboard within milliseconds. Echo prevention ensures you do not see your own changes reflected back. The sync protocol handles concurrent edits gracefully — last-write-wins with visual indicators of who changed what.

04

Presence & Version History

A presence bar shows stacked avatars of everyone currently editing the project, with an online count. Version history captures snapshots on save, with up to 50 versions per project and automatic pruning of the oldest. Roll back to any previous version if needed. Graceful degradation means the editor works perfectly in single-user mode when the Durable Object is unavailable.

Ready to see it in action?

Get Started