There is 1 comment.
 
 
XWiki Platform / cid:jira-generated-image-avatar-f979bb5c-baa8-4f68-b0cf-c19f3f0e8cac XWIKI-24158 Open

Enable realtime editing for BlockNote editor

 
View issue   ยท   Add comment
 

1 comment

 
cid:jira-generated-image-avatar-f618bfb1-9769-4179-ba1d-df04c6747d16 Marius Dumitru Florea on 05/May/26 10:32
 

The first version has some limitations:

  • you need to force edit lock
  • the effective author for the collaboration session is not computed
  • no auto-save
  • it's still using the old edit form toolbar, not the new realtime toolbar (that CKEditor is using)
  • partial clustering support: the state is synchronized between cluster nodes when all nodes are up, but there is no synchronization performed when a node is restarted or reconnected (we need to add custom events for this and ask the cluster leader to give the collaboration state)
  • the Yjs WebSocket doesn't keep an authoritative Yjs document because it's not easy to use Yjs API server-side in Java; in order to perform the initial sync from the Yjs protocol, when a new client connects, it records all update messages and replays them to connecting users; this works, but it's far from optimal: instead of sending only the diff (missing changes) we basically send all changes; besides bandwidth and connection time, this could also take server-side memory for collaboration sessions with a long life.