Notes on building and buying rich text editors
Technical write-ups and buying analysis from the team that builds RichTextEditor. Every cost figure is taken from the vendor’s own published pricing, and every technique is one we ship.
What rich text editors actually cost in 2026
Editor-load metering, per-seat AI credits, and collaboration add-ons stack in ways list prices hide. A worked three-year comparison using each vendor's own published pricing.
Read the article →How paginated page view works in a browser editor
Word shows you page boundaries. A contenteditable does not. Here is how to project a continuous DOM onto real paper geometry - and the measurement trap that silently overflows pages.
Read the article →Legal numbering (1, 1.1, 1.1.1) with CSS counters
Contracts and specifications need hierarchical clause numbering. Writing the numbers into the text guarantees they drift. CSS counters keep the markup clean and the numbering always correct.
Read the article →CRDT vs OT: how collaborative editors merge edits
Google Docs transforms operations. Yjs-based editors converge data structures. The choice barely shows in a demo and shows up all over your architecture - plus a five-step test for verifying any vendor's claim.
Read the article →Content-Security-Policy for rich text editors
Editors inject stylesheets, set inline style attributes, embed iframes, and sometimes fetch libraries mid-session. Here is how to work out the policy you actually need instead of reaching for unsafe-inline.
Read the article →Does your rich text editor phone home? How to check
Metered editors need to count you. If your editor bills per load, something is reporting those loads. A ten-minute method to find out exactly what your editor sends, and where.
Read the article →Why your format painter silently does nothing
Wrapping the target in a span with the captured styles looks obviously correct, and it fails on the most common case a user will try. The reason is one line of the CSS cascade that almost nobody thinks about.
Read the article →Footnotes that renumber themselves
A footnote is two things in two places that must always agree. Keep one source of truth - the order of the markers in the document - and derive everything else from it, including the numbers you write into the saved HTML.
Read the article →A contents block is content. An outline panel is not.
They look like the same feature and they belong to different halves of your editor. Getting the line wrong produces either chrome that leaks into published HTML, or a contents page that vanishes on save.
Read the article →