Release notes · Updated September 2026 · 25 releases

What’s new in RichTextEditor

A running log of releases for the RichTextEditor JavaScript library and the @richscripts/richtexteditor npm package. Pick a release for the full detail, including the reasoning behind each change.

  1. 2.11.0Latest

    A size limit for uploads that works even when no upload handler is configured, a Border collapseoption in Table Properties, and upload messages written for the person reading them. Core build 594,890 → 597,342.

    Read the 2.11.0notes →
  2. 2.10.0

    Formatted content now renders under a strict Content-Security-Policy: alignment, colour and size stay visible while editing, whether they come from loaded content, a command, a paste or undo. Pasting paragraphs no longer breaks the paragraph you paste into. The two plugins 2.9.0 missed are converted. Core build 592,031 → 594,890.

    Read the 2.10.0notes →
  3. 2.9.0

    The editor now works under a strict Content-Security-Policy. Under style-src 'self' the browser was discarding the rules of every <style>element the editor injects, so the editing surface lost its typography, gutters, table borders and cell-selection highlight, and 41 plugin UIs rendered unstyled — with nothing thrown and nothing obviously broken. Core build 589,759 → 592,031.

    Read the 2.9.0notes →
  4. 2.8.0

    Three new plugins: a state inspector devtool that checks your document against 12 structural rules, a custom node type registry that lets you declare your own content and how it converts on export, and ruby annotationsfor furigana and phonetic guides. No core change — the editor build is byte-identical to 2.7.2.

    Read the 2.8.0notes →
  5. 2.7.2

    The editor no longer needs script-src 'unsafe-eval' in your Content-Security-Policy. One line of licensing code was building a call as a string and handing it to the dynamic-code global; it is a direct call now, and a strict policy that used to break the editor works.

    Read the 2.7.2notes →
  6. 2.7.1

    Core 2.5.9: the editor had no live region at all, so screen readers heard none of its outcomes; read-only mode was invisible to assistive technology; the accessibility checker gains two rules.

    Read the 2.7.1notes →
  7. 2.7.0

    Core 2.5.8: bold, italic and strikethrough can choose their tag; indentation stops pretending to be a blockquote; a new inline-code button.

    Read the 2.7.0notes →
  8. 2.6.4

    Core 2.5.7: an undo bug that looked like data loss, IME composition handling, a paste parser fix, and the sanitizer keeping comments.

    Read the 2.6.4notes →
  9. 2.6.3

    Markdown task lists round-trip, and escaped characters import as themselves.

    Read the 2.6.3notes →
  10. 2.6.2

    Round-trip fixes found by dogfooding export then import.

    Read the 2.6.2notes →
  11. 2.6.0

    Layout tables, crash recovery, shadow-DOM support, a web component — and stylesheets that are finally minified.

    Read the 2.6.0notes →
  12. 2.5.4

    A one-line CSS fix that had reached both websites but neither the npm package nor the download zips.

    Read the 2.5.4notes →
  13. 2.5.3

    Found by checking the shipped 2.5.2 build on the live site rather than trusting the release notes.

    Read the 2.5.3notes →
  14. 2.5.2

    Two rendering fixes for Chrome’s editing-frame reseat, plus refreshed default editing typography.

    Read the 2.5.2notes →
  15. 2.5.1

    A fix release: verified accessibility repairs across the editor chrome, two long-standing dialog and review-mode bugs closed, and code blocks that survive a save/reload round trip.

    Read the 2.5.1notes →
  16. 2.5.0

    Two new plugins from a full cross-map of the complete CKEditor 5 and TinyMCE 8 feature lists, a caret that can reach anywhere, and a round of verified accessibility fixes in the core.

    Read the 2.5.0notes →
  17. 2.4.0

    Twenty-nine plugins covering long-document authoring, real document export, security and accessibility — with no changes to the editor core. Three of these entries fix things about our own product that were not true, and we have written them up rather than quietly patching them.

    Read the 2.4.0notes →
  18. npm 2.3.0

    Major editor-capability release closing the largest Notion / Google Docs / CKEditor feature gaps. Every feature is editor-native (no server required) and round-trips through getHTMLCode / getJSON. No breaking changes; each is opt-out via config.

    Read the npm 2.3.0notes →
  19. npm 2.2.3

    Editing-experience push — 88 small-to-medium UX features added in one wave. No breaking changes; everything opt-out via config.

    Read the npm 2.2.3notes →
  20. npm 2.2.0

    RichTextBox.AspNetCore: bundled plugins/crdt-engine.min.js auto-injected via the <richtextbox> tag helper.

    Read the npm 2.2.0notes →
  21. npm 2.0.6

    RichTextBox.AspNetCore: 1.0.0-preview.12

    Read the npm 2.0.6notes →
  22. npm 2.0.5

    Read the npm 2.0.5notes →
  23. npm 2.0.4

    Read the npm 2.0.4notes →
  24. npm 2.0.3

    Read the npm 2.0.3notes →
  25. npm 2.0.0&ndash;2.0.2

    Read the npm 2.0.0&ndash;2.0.2notes →

Install or upgrade

Grab the latest via npm:

npm install @richscripts/richtexteditor@latest

Need the ASP.NET Core Tag Helper wrapper? See richtextbox.com release notes.

Feedback & issues: support@richtexteditor.com