Skip to content

Collaboration via Yjs #3033

Description

@JammingBen

This is a collection of tasks for bringing collaboration via Yjs to OpenCloud.

Tasks

Groundwork

Direct follow-ups

These should happen before we officially announce this as productized.

  • appVersion is 0.0.0 (private package placeholder), so both version gates are dead code in production
  • Container hygiene: floating node:22-alpine (type stripping needs > = 22.18), no HEALTHCHECK, no SIGTERM handler, no depends_on in compose
  • Add e2e tests
  • Add unit tests for services/realtime
  • Publish the hocuspocus Docker image and set up CI for future releases
  • Add the published image to the opencloud-compose setup (default?)

Can happen later

  • Make "Show source" work for markdown files despite collaboration enabled on the system
  • Show avatars of users in the current session (toolbar top right, click opens sharing/members panel?)
  • Grab the Excalidraw extension from feat(yjs): collaborative editing framework #2755 and port it to web-extensions
  • Add dev docs on how to write an extension using collaboration
  • Check compatibility in vaults, i.e. can we make it work in vaults?

Needs to be discussed

  • Version handling & auto saving
  • Known limits in dev/docs/collaboration.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions