Skip to main content
The Revise SDK is a browser-only React component that puts a full word processor inside an application that already owns its shell, authentication, storage, and users. Your application hands the SDK a document — .docx, Markdown, plain text, or HTML — and gets a .docx back. In between, the component:
  • parses the file with Revise’s own converters, preserving comments and tracked changes on the DOCX path;
  • creates a Yjs-backed editing session — every document is a CRDT, so real-time collaboration over a transport you own is the native state, not an add-on;
  • renders the document on canvas, paginated, with the native ribbon (or none at all, if you would rather build your own);
  • preserves comments and tracked changes through the round trip;
  • exposes Revise’s canonical document-local JSON-schema tools, so whatever model you already run can read and edit the document;
  • exports back to .docx.
A second entry point, @reviseio/sdk/backend, runs the same converters and document-local semantic tools under Node — and it is the half no other DOCX SDK offers. Your server becomes a first-class participant in the same collaborative documents: create rooms before anyone opens them, edit live documents headlessly, propose tracked changes a user reviews in the browser, and export Word again — all against a host-owned Y.Doc, with no React mount and no model required. Browser and server speak one tool contract, so host code is shared verbatim between them. See collaboration and the backend reference.

What it is not

The SDK deliberately does not provide accounts, authentication, document storage, collaboration servers, tenancy, billing, or an application shell. It is a component, not a platform. Nothing leaves the browser unless you wire up an agent yourself.
Multi-user editing works, but the transport is yours. Pass a Yjs provider — Hocuspocus, y-websocket, or your own — and the document becomes collaborative, with remote carets and presence. The SDK never opens a connection or stores anything. See collaboration and roles. There is no document locking, and roles are client-side boundaries rather than a server-enforced permission model.
The SDK is proprietary software available under a commercial licence. Email sdk@revise.io for access to the package.

Two audiences, two API surfaces

The SDK is designed for two consumers at once, and keeping them straight is the single most useful idea in these docs.

Your application

Component props, callbacks, and the typed controllers on ReviseEditorHandle. Subscriptions, focus management, File and Blob objects, custom toolbars and panels. See the handle reference.

Your agent

JSON-schema tools with serializable inputs and outputs, operating on semantic document state rather than UI geometry. Safe to invoke without React state or browser focus. See agent tools.
Capabilities deliberately overlap — selection, for instance, exists on both surfaces — but the shapes differ, because a React panel and a language model want different things. Interactive concerns such as review navigation and comment-panel state are host-only by design; agents get semantic mutation tools instead.

Where it fits

AI copilots

Products that need to edit contracts, not just render them.

Vertical workflow apps

Anything replacing a round trip through Microsoft Word.

Review products

Where every change has to be attributable and reversible.

Document-heavy SaaS

Anything that currently ends in “download the .docx”.
Start with the quickstart, then read architecture to understand what the component owns and what you own.