RayEditor is a lightweight WYSIWYG editor for JavaScript, TypeScript, React, Vue, Angular, and Svelte. No commercial license. No vendor lock-in. Just drop it in and write.
Features locked behind paid tiers in TinyMCE and CKEditor are free in RayEditor.
The only free, open-source WYSIWYG HTML editor with slash commands, markdown mode, task lists, callouts, find/replace, and a plugin API — all in one package. A lightweight alternative to TinyMCE, Quill, and CKEditor that works with React, Vue, Angular, and Svelte.
| Feature | RayEditor | TinyMCE (free) | Quill.js | CKEditor 5 | Trix |
|---|---|---|---|---|---|
| Zero dependencies | ✅ | ❌ | ❌ | ❌ | ✅ |
| TypeScript types | ✅ | ✅ | ✅ | ✅ | ❌ |
| Dark mode (free) | ✅ | Paid | ❌ | Paid | ❌ |
| Slash commands | ✅ | ❌ | ❌ | ❌ | ❌ |
| Markdown mode | ✅ | Paid | ❌ | ✅ | ❌ |
| Find & Replace (free) | ✅ | Paid | ❌ | Paid | ❌ |
| Task lists | ✅ | Paid | ❌ | ✅ | ✅ |
| Callout blocks | ✅ | ❌ | ❌ | ❌ | ❌ |
| Paste normalization | ✅ | ✅ | ❌ | ✅ | ❌ |
| Plugin / Extension API | ✅ | ✅ | ✅ | ✅ | ❌ |
| Tables (free) | ✅ | Paid | ❌ | ✅ | ❌ |
| Word count (free) | ✅ | Paid | ❌ | ✅ | ❌ |
| Mention (@) support | ✅ | ❌ | ❌ | ✅ | ❌ |
| MIT License | ✅ | ❌ GPLv2 | ✅ | Paid | ✅ |
| React / Vue / Angular / Svelte | ✅ | ✅ | ✅ | ✅ | ❌ |