From a distance every editor's feature list looks the same. These are the parts that took the longest, that can't be bolted on afterwards, and that decide whether a document tool actually holds up for contracts and filings.
In the editor, in the PDF, and for everyone else on the matter. One layout engine decides where every page breaks, and the export is that decision printed.
Most editors export by handing HTML to the browser's print pipeline and letting it re-paginate from scratch. That is why exports surprise people: a heading ends up alone at the foot of a page, a footnote drifts, the page count moves between one machine and the next. Stesura never re-flows on export.
The same document produces the same PDF — on any machine, for any user, every time.
Page breaks, headers, footers and numbering are decided once, in the editor, and carried over.
Page counts, break points and numbering match. The PDF is the document, printed — not a second attempt at laying it out.
What we don't claim: pixel-identical rendering between your browser and the PDF. No one can honestly promise that, and the people who do are describing a target that doesn't hold still. What we guarantee is the pagination — where the breaks fall, how many pages there are, and what each one is numbered.
See where the edges areYour clients will send you a .docx. They will expect a .docx back. That constraint is not negotiable, so we treated it as a first-class feature rather than a converter bolted on at the end.
Import and export are the same model, not two half-maintained pipelines.
We have worked inside law firms. Numbering, cross-references and redlining were not features someone requested later — they shaped the schema before the first paragraph rendered.
Every one of these has to survive the other five. A footnote inside a tracked deletion inside a numbered clause that just moved to the next page still has to number correctly.
Generate a document from a template, push a clause update across forty matters, or stamp in a signature block — from the server, while people have the document open in front of them.
Collaboration is server-authoritative, not a CRDT living in the browser. The server holds the document, so the server can change it.
Install it, render it, style it. There is no iframe, no SaaS dependency and no mandatory backend — the editor runs client-side, in your bundle, under your CSS.
Nothing proprietary sits between you and the document.
Most editors that ship a word processor's feature set close the door behind them. The whole point of building on ProseMirror was to leave it open.
What we don't hand over is the schema's spine — track changes, comments, numbering and pagination all depend on knowing how the document is shaped. Everything around it is yours.
None of these sell an editor on their own. All of them are the reason a document looks wrong three weeks into a project.
AI edits can land as tracked suggestions — reviewed, accepted or rejected exactly like any other author's.
A table row can break across a page boundary mid-cell, instead of being shoved whole onto the next page.
Anchored images with square, tight, in-front and behind text wrapping — not just block images between paragraphs.
Headers, footers, footnotes and endnotes each run as an isolated editor with its own rules, not as a text field.
Every block carries its own language, so one document can spell-check an English clause and a French one correctly — and spell its numbering out in the right language. Bidi-aware throughout, with ten UI locales including Hebrew and Arabic.
A local-authority mode runs the same engine entirely in the browser, with IndexedDB persistence and multi-tab sync.
Book a demo, or start with the open-source core today.