docx-editor 1.x has shipped. Vue support, i18n, agents.

Migration guide →
EngineeringApril 13, 20261 min read

Real-time Collaboration in docx-js-editor

Set up real-time DOCX editing with Yjs: shared cursors, presence, comment sync, and tracked-change attribution across browsers.

0.x postThis post uses the 0.x package names and APIs. For the current release see the 1.x docs and the migration guide.

@eigenpal/docx-js-editor@0.0.34 adds real-time collaboration via Yjs: live cursors, presence, comment sync, and tracked-change attribution across browsers. It works with y-webrtc, y-partykit, @liveblocks/yjs, @hocuspocus/provider, or any Yjs provider.

Try it → mints a fresh room and drops you in. Share the URL to invite a second tab or colleague.

Three new props

<DocxEditor
  document={createEmptyDocument()}
  externalContent
  externalPlugins={plugins}        // ySyncPlugin, yCursorPlugin, yUndoPlugin
  comments={comments}              // controlled, mirrored to a Y.Array
  onCommentsChange={setComments}
/>

externalContent hands the document off to Yjs. Tracked changes sync as part of the PM tree. Comments use the controlled API because their thread metadata lives outside the doc.

Where to go next