v0.1.0 · 21 KB gzip · 0 runtime dependencies

A drop-in WYSIWYG editor.
No dependencies. Two script tags.

TAEditor brings CKEditor / TinyMCE features to your page in about 21 KB gzipped, with zero runtime dependencies and no bundler required. Works with plain HTML, Bootstrap, Tailwind, jQuery, Alpine, Vue, and HTMX.

~21 KB gzip JS ~3.5 KB gzip CSS 0 runtime deps

Editor Live

Rendered HTML

Features

Everything a content editor needs.
Nothing it doesn't.

TAEditor ships the formatting tools your users actually use, and stays out of the way of your stack.

Rich text, the basics

Bold, italic, underline, strikethrough, inline code, highlight, text color, super/subscript, headings, alignment, lists, links, blockquotes, and horizontal rules — every standard formatting tool.

Tables & code blocks

Insert N×M tables with row/column add/remove menus. Code blocks have a real code-editor Tab — indent and outdent multi-line selections.

fx

Math equations

KaTeX-rendered LaTeX with live preview and a searchable library of 200+ presets across 14 topics. Fully round-trippable — the source LaTeX is preserved on the element, so loading a saved document is lossless.

Image upload, your way

Base64 by default — works offline. Or POST to your endpoint, or hand off to an async upload handler for S3, signed URLs, or any custom flow. Oversize images are auto-compressed, and inserted images drag-resize and crop in place.

XSS-safe by default

Built-in HTML sanitizer strips <script>, inline event handlers, and javascript: URLs on paste and on load.

Framework-neutral

CSS namespaced under .ta-editor, Tailwind preflight defended against, x-ignore/v-pre on the root for Alpine and Vue, and auto-cleanup on HTMX swap. Compatibility test page →

Quick start

Two script tags.
One line of JavaScript.

That's the whole setup. Wrap a <textarea> in a <form> and the editor syncs its HTML back on submit — your server-side handler doesn't change.

  • By IDTAEditor.create('#editor')
  • By classTAEditor.create('.editor') upgrades every match
  • By tagTAEditor.create('textarea') for every textarea on the page

Full docs

<link rel="stylesheet" href="https://taeditor.trogon.info/dist/taeditor.min.css">
<script src="https://taeditor.trogon.info/dist/taeditor.min.js"></script>

<textarea id="editor" name="content"></textarea>

<script>
  TAEditor.create('#editor');
</script>
Built for

From comment boxes to long-form docs.

Configure the toolbar to fit the surface — keep it minimal for short input, light it up for full editing.

Blogs & CMSes

Replace your textarea with a full editor: headings, images, tables, code blocks, math. The HTML output drops straight into your database — no schema changes needed.

Comments & chat

Strip the toolbar to the essentials (bold, italic, link, lists) for a compact, fast input that still beats a plain textarea.

Docs & knowledge bases

Round-trippable math equations and code-editor-style Tab make TAEditor a natural fit for technical writing, wikis, and engineering notes.

Try it in your browser.

No install, no signup. Open the playground and start typing.

Open live playground Read the docs