Magic-Editor-X — FAQ
Basics
What is a block-based editor?
A block-based editor represents content as an ordered list of typed blocks (paragraph, heading, image, code, etc.) instead of a single HTML string. Each block is independently editable, movable, and stylable.
Magic-Editor-X uses Editor.js as its foundation, adding collaboration via Y.js, Strapi Media Library integration, and a Content-Type Builder custom field.
How does it differ from Strapi's default rich-text field?
Strapi's default editor is a basic WYSIWYG producing Markdown or HTML. Magic-Editor-X adds:
- Structured JSON output (easier to render, portable, typed)
- Real-time collaboration with live cursors
- 18+ specialized block types (embeds, galleries, code with syntax highlighting, attachments, callouts)
- Version history (Premium)
- AI assistant (Premium/Advanced)
Which block types are included?
See Block Types for the full list. Summary: paragraph, headings H1-H6, lists, checklists, quotes, code with language picker, images, galleries, videos, audio, attachments, embeds (YouTube/Vimeo/Twitter/CodePen/Figma/iframe), tables, warnings, raw HTML, markers, inline code.
Collaboration
How does real-time collaboration work?
Magic-Editor-X uses Y.js — an industry-standard CRDT (Conflict-free Replicated Data Type) library:
- Multiple users edit the same document simultaneously.
- Changes merge automatically without conflicts.
- Users see live cursors with name labels.
- Changes sync even after brief disconnects (offline support).
How many people can edit simultaneously?
- Free: 2 simultaneous collaborators per document.
- Premium: 10.
- Advanced: Unlimited.
Is the collaboration server separate?
No. The Y.js sync runs through Strapi's existing WebSocket support. No extra server or infrastructure needed.
Output & rendering
What format is the saved content?
Clean structured JSON — an array of typed blocks:
{
"time": 1712000000000,
"blocks": [
{ "type": "header", "data": { "text": "Hello", "level": 1 } },
{ "type": "paragraph", "data": { "text": "Hello <b>world</b>." } }
],
"version": "2.x"
}Portable and trivial to render on any frontend.
How do I render the JSON output?
Use any existing Editor.js renderer (there are React, Vue, and HTML renderers on npm) or write your own. Each block has a type and data — switch on type and render accordingly. About 20 lines of code.
See Examples for full React, Vue, and Svelte renderers.
Features & tiers
Can I add custom block types?
Yes. Editor.js has a plugin API — create custom tools and register them in Magic-Editor-X's config. Examples: custom call-to-action blocks, forms, conditional content, e-commerce product cards.
How is version history stored?
Every save creates a new version with timestamp and user. Premium tier keeps last 50 versions per document; Advanced is unlimited. Restore any previous version with one click.
What is the AI assistant?
- Premium: usage-based AI — rewrite paragraphs, summarize, translate, improve grammar.
- Advanced: full AI — continuous suggestions, tone matching, content generation from brief.
Integration
Does it work with Strapi's Media Library?
Yes. The Image, Gallery, Video, Audio, and Attachment blocks integrate directly with Strapi Upload. Drag-drop from the Media Library, paste URLs, or upload new files inline.
Does it work with i18n (multi-language)?
Yes. Magic-Editor-X is a Strapi custom field — it inherits i18n support from the Content-Type Builder. Each locale has its own independent content.
Does it work in SPA-only admin (headless Strapi)?
Yes. Magic-Editor-X is only rendered in the Strapi admin UI. The saved JSON is served via the standard Strapi REST/GraphQL API for your frontend to consume.
Migration
What happens to existing content if I switch from the default editor?
Content must be migrated from Markdown/HTML to Editor.js JSON blocks. We provide a migration script with the plugin (see Examples). Migration is one-way — once migrated to blocks, don't go back.
Test with a copy of your database first.
Pricing
| Capability | Free | Premium ($9.90/mo) | Advanced ($24.90/mo) |
|---|---|---|---|
| Full editor access | ✓ | ✓ | ✓ |
| All 18+ block types | ✓ | ✓ | ✓ |
| Real-time sync | ✓ | ✓ | ✓ |
| Live cursors | ✓ | ✓ | ✓ |
| Collaborators | 2 | 10 | ∞ |
| Version history | — | 50 versions | Unlimited |
| AI assistant | — | Usage-based | Full |
| Priority support | — | ✓ | ✓ |
Still have questions? support@magicdx.dev