Collaboration
BlnkSpace documents support real-time multiplayer editing. Multiple people can write in the same document simultaneously — changes appear live, cursors are visible, and the document stays consistent across all connected sessions without conflicts.
How it works
Collaboration is built on Yjs — a conflict-free replicated data type (CRDT) library — with Hocuspocus as the WebSocket server. Every keystroke is represented as a Yjs operation that can be merged with any other operation without conflicts, regardless of order or network conditions.
When you open a document, your editor connects to the Hocuspocus server and receives the current Yjs document state. From that point, all edits are broadcast in real time to every other connected session. If you go offline, your edits are queued locally and synced automatically when the connection restores — no merge conflicts, no data loss.
Inviting collaborators
Click the Share button in the top-right of the editor toolbar. The share panel slides open showing the current public URL and member list.
Type the collaborator's email address in the invite field. Select their role — Editor (can edit) or Viewer (read-only).
Click Invite. An email is sent with a unique invitation link valid for 7 days. The invite link is also shown in the panel so you can copy and send it manually.
The invitee clicks the link, signs in (or creates an account), and the document appears in their workspace under "Shared with me". They can open it immediately.
Member roles
| Role | Can edit | Can view | Notes |
|---|---|---|---|
| Owner | ✓ | ✓ | Full control. Can invite, remove members, and delete the document. |
| Editor | ✓ | ✓ | Can write and edit all content. Cannot manage members or delete. |
| Viewer | ✗ | ✓ | Read-only. Can see all content but cannot make changes. |
Managing members
Presence and cursors
When multiple people are in a document simultaneously, each person's cursor appears as a colored caret with their name label. Cursor colors are assigned automatically and are consistent for the duration of the session.
Conflict resolution
Because Yjs uses CRDTs, there are no merge conflicts. If two people edit the same paragraph at the same time, both edits are preserved and merged character by character — the result is always a valid combination of both changes, never a "your version vs their version" prompt.
One known edge case: if a collaborator joins a document for the first time while it has only one editor working on it, the solo editor's recent changes are persisted to the Yjs document via a solo-persist timer on the server before the new collaborator receives the state. This prevents the new joiner from seeing a stale version.
Collaborator limits
The number of collaborators you can invite per document depends on your plan. When you reach the limit, the invite button is disabled and a prompt to upgrade appears. Existing collaborators are not affected when you downgrade — they retain access until manually removed or until the grace period ends.