mxEditorJs
Block editor Editor.js for MODX 3 — content in blocks instead of TinyMCE/CKEditor

Block content editor for MODX 3 based on Editor.js. Replaces the default TinyMCE/CKEditor: content is created in blocks (heading, text, image, video), and the site renders proper HTML.
| Need | Document |
|---|---|
| Enable editor in 3 steps | Quick start |
| Configure tool profiles and media | System settings |
| Connector API, PHP classes, data formats | API |
| Working with TV and HTML → Editor.js migration | Integration |
textarea with richtext optionmxEditorJs builds the editor from the following block and inline tools, block tune, and plugin. Full catalog: Awesome Editor.js.
| Plugin | Description | Links |
|---|---|---|
| @editorjs/paragraph | Basic text block | npm · awesome |
| @editorjs/header | Headings H1–H6 | npm · awesome |
| @editorjs/list | Bullet and numbered lists | npm · awesome |
| @editorjs/checklist | Checklist with checkboxes | npm · awesome |
| @editorjs/quote | Quote | npm · awesome |
| @editorjs/table | Table | npm · awesome |
| @editorjs/code | Code block | npm · awesome |
| @editorjs/raw | Raw HTML | npm · awesome |
| @editorjs/embed | Embed (YouTube, Paste, etc.) | npm · awesome |
| @editorjs/attaches | File attachments | npm · awesome |
| @editorjs/delimiter | Delimiter | npm · awesome |
| @editorjs/warning | Warning block | npm · awesome |
| Image (custom) | Image with MODX Media Source upload and browser | Part of mxEditorJs (ImageTool.ts), similar to @editorjs/image |
| Plugin | Description | Links |
|---|---|---|
| @editorjs/marker | Text highlight (marker) | npm · awesome |
| @editorjs/inline-code | Monospace code in text | npm · awesome |
| @editorjs/underline | Underline | npm · awesome |
Links and MODX resource autocomplete are implemented by the custom LinkAutocomplete tool in mxEditorJs (inspired by @editorjs/link-autocomplete).
| Plugin | Description | Links |
|---|---|---|
| editorjs-text-alignment-blocktune | Text alignment in blocks (left, center, right) | npm · GitHub · awesome |
| Plugin | Description | Links |
|---|---|---|
| editorjs-undo | Undo/Redo | npm · GitHub · awesome |
| Plugin | Links |
|---|---|
| @editorjs/editorjs | Editor.js core |
| Dependency | Version |
|---|---|
| MODX Revolution | 3.0.3+ |
| PHP | 8.2+ |
| Node.js | 18+ (only for building frontend from source) |
Or install a transport package manually: download mxeditorjs-*.transport.zip, in Packages → Installer click Upload package, select the file, install, then clear cache.
cd /path/to/modx/Extras/
git clone <repo-url> mxEditorJs
cd mxEditorJs
npm install
npm run build
php _build/build.phpwhich_editor → select mxEditorJsmxeditorjs.enabled = YesSee: Quick start.
All settings are in the mxeditorjs namespace.
| Key | Default | Purpose |
|---|---|---|
mxeditorjs.enabled | true | Enable/disable editor |
mxeditorjs.profile | default | Active tool profile |
mxeditorjs.enabled_tools | — | Override profile: comma-separated tool list |
mxeditorjs.image_mediasource | 1 | Media Source ID for images |
mxeditorjs.max_upload_size | 5242880 (5 MB) | Max upload size (bytes) |
Full list: System settings.