Переросли Editor.js?
Вы выбрали его ради блоков. Но у блочного текстового редактора есть потолок — нет настоящей вложенности, нет модели данных, для всего нужен плагин. В Blok эти стены исчезают.
В Blok ничего этого больше нет
Это не список фич — это те самые потолки, из-за которых вы стали искать замену.
Плоские блоки
Блоки не могут содержать блоки. Нет вложенности, тогглов с содержимым, колонок.
Всё — это блок
Настоящая иерархия. Вложенные страницы, колонки, тогглы, строки баз данных — блоки внутри блоков.
Для всего нужен плагин
Ищи, подключай, следи за версиями и надейся, что плагин поддерживают — для каждого блока.
Всё в комплекте
Таблицы, медиа, эмбеды, колонки, код — один типизированный пакет, без раскопок плагинов.
Просто текстовый редактор
Контент — это потолок. Нет структурированных записей, баз данных, страниц внутри страниц.
Движок блоков
Базы данных и строки — это блоки. Стройте рабочее пространство уровня Notion, а не просто поверхность для письма.
Нет истории с фреймворками
Обёртку пишете сами и боретесь с багами жизненного цикла. Нет официального пути для React/Vue/Angular.
Адаптеры из коробки
Типизированный хук и компонент для React, Vue и Angular. Готовые, а не ваша забота.
Вы сохраняете почти весь свой код Editor.js
- Сохранённый контент загружается как есть — без шага конвертации данных.
- Кастомные блок-тулзы переносятся без изменений — те же render, save, validate, onPaste.
- Старые инлайн-тулзы? Оберните их в wrapLegacyInlineTool вместо переписывания.
- Отброшенные поля логируют предупреждение с именем блока — без тихой потери данных.
import { EditorJS } from '@bloklabs/core'; // new EditorJS({ ... }) остаётся без измененийBlok экспортирует алиас EditorJS. Поменяйте одну строку — и всё работает.
Одна команда, потом ревью и деплой
npx -p @bloklabs/core migrate-from-editorjs ./src --dry-run- 1. Предпросмотр через --dry-run
- 2. Применить и просмотреть диф
- 3. Деплой