OverviewWhy TypeScriptFeaturesFrameworksAPIDemosGetting startedPricingDownload

Why the TypeScript Edition

The editor you know, with types you can trust.

Same RichTextEditor runtime, wrapped so TypeScript understands it: a typed config object, an awaited async loader, and a typed instance back — instead of a global script and an untyped constructor.

Before — untyped global

<!-- Classic: a global script and an untyped constructor -->
<script src="/rte/rte.js"></script>
<script>
  var editor = new RichTextEditor("#editor");
  editor.setHTMLCode("<p>hi</p>"); // no autocomplete, no checking
</script>

After — typed import

import {
  createRichTextEditor,
  type RichTextEditorInstance,
} from "ts-rich-text-editor";

// Typed config, awaited assets, typed instance back.
const editor: RichTextEditorInstance =
  await createRichTextEditor(host, { height: "480px" });
editor.setHTMLCode("<p>hi</p>"); // checked + autocompleted

Typed options

Configuration you can autocomplete

RichTextEditorOptions describes the config object, so your editor is set up with autocomplete and compile-time checking instead of guesswork against docs.

Typed instance

A known API surface

createRichTextEditor resolves to a typed RichTextEditorInstance — getHTMLCode, setHTMLCode, execCommand, attachEvent, focus, and destroy are all discoverable from your editor.

Async assets

No global script tag

The runtime, styles, plugins, and language files load on demand through an async loader. Import a function; you are not committed to a global <script> and a window global.

Same runtime

Nothing lost in translation

This is not a re-implementation. It is the shipping RichTextEditor build under a typed facade, so every feature — tables, Office paste, AI Toolkit, collaboration — is exactly the same.

Portable

Fits any framework or none

Because you attach to a plain element and get an instance back, the same call works in React, Vue, Angular, or vanilla TypeScript with no framework-specific wrapper.

Perpetual license

Own the build you ship

The package includes the typed wrapper and the full runtime. Buy it once and self-host the assets — there is no per-seat metering and no mandatory cloud call.

Try it against your own TypeScript app.

The download bundle ships the typed package, the full source, and a self-contained HTML evaluation you can host anywhere.