Collaborative documents

Give shared editing a backend.

Store and relay Yjs updates when several people need to work in the same document experience.

  • Yjs
  • Shared rooms
  • Persisted updates

Multi-user by design

Build the editor your product needs.

Daptin supplies a Yjs-compatible collaboration path while your frontend owns the editing interface, presence treatment, and product-specific experience.

Concurrent changes can converge

Yjs gives clients a proven conflict-free data model for shared documents.

Updates survive a browser session

Daptin stores document updates so a returning client can rebuild the shared state.

Keep collaboration beside product data

Documents live in the same application server as users, records, files, and access rules.

Choose the editor

Use the Yjs-aware frontend toolkit that fits text, canvas, structured data, or another collaborative surface.

Shared experiences

Let people edit the same product object together.

Documents and notes

Back rich text, plain text, markdown, or structured collaborative content with conflict-free Yjs updates.

Code and configuration

Use a Yjs-aware editor for shared code or configuration surfaces while Daptin persists the update stream.

Spreadsheets and canvases

Choose a compatible frontend binding and keep the collaborative state beside the rest of the application.

Offline work

Let CRDT-aware clients merge changes after reconnecting instead of implementing custom last-write-wins behavior.

Choose the room carefully

Standalone and record-backed collaboration have different access models.

Record-backed routes use the owning row: Update allows editing, Read allows receiving changes, and other users cannot connect. Ordinary standalone rooms are available to authenticated users who know the room name, so private standalone names must be unguessable.

Permissions are captured on connection; reconnect after membership changes. Persist and back up the Yjs storage directory with the rest of the application state.

Choose and test a room →

Build together without building sync first.