Loading Documentation Hub...
Scanning documentation library
Loading Documentation Hub...
Scanning documentation library
Documentation
📚 Documentation
Loading Documentation Hub...
Scanning documentation library
Scanning documentation library
Scanning documentation library
Scanning documentation library
Підготовка контенту платформи Ring
Підготовка контенту платформи Ring
Підготовка контенту платформи Ring
Статус: 🔄 В процессе (спринты 2.1–2.3 завершены; остаются 2.4–2.5)
Длительность: 2-3 недели
Предварительные требования: Завершённая Фаза 1
Фаза 2 превращает базовый contentEditable редактор в научный редактор публикаций мирового класса с расширенным редактированием текста, поддержкой LaTeX-уравнений, автосохранением, историей версий и возможностями экспорта.
Реализовано (2026-02-25): Форматированный текст (Tiptap), LaTeX (KaTeX + модальное окно формул), автосохранение (задержка 30 с), история версий (снимок/восстановление), схема публикаций и API. Подробная документация: Научный редактор.
Статус: 🔄 В процессе (спринты 2.1–2.3 завершены; остаются 2.4–2.5)
Длительность: 2-3 недели
Предварительные требования: Завершённая Фаза 1
Фаза 2 превращает базовый contentEditable редактор в научный редактор публикаций мирового класса с расширенным редактированием текста, поддержкой LaTeX-уравнений, автосохранением, историей версий и возможностями экспорта.
Реализовано (2026-02-25): Форматированный текст (Tiptap), LaTeX (KaTeX + модальное окно формул), автосохранение (задержка 30 с), история версий (снимок/восстановление), схема публикаций и API. Подробная документация: Научный редактор.
Статус: 🔄 В процессе (спринты 2.1–2.3 завершены; остаются 2.4–2.5)
Длительность: 2-3 недели
Предварительные требования: Завершённая Фаза 1
Фаза 2 превращает базовый contentEditable редактор в научный редактор публикаций мирового класса с расширенным редактированием текста, поддержкой LaTeX-уравнений, автосохранением, историей версий и возможностями экспорта.
Реализовано (2026-02-25): Форматированный текст (Tiptap), LaTeX (KaTeX + модальное окно формул), автосохранение (задержка 30 с), история версий (снимок/восстановление), схема публикаций и API. Подробная документация: Научный редактор.
Ключевые компоненты:
components/editor/scientific-editor.tsx — Основной редактор Tiptapcomponents/editor/editor-toolbar.tsx — Панель форматированияФункции:
mathBlock (KaTeX); модальное окно формул с предпросмотромСхема базы данных (шаблон Ring JSONB в data/schema.sql):
Ключевые компоненты:
components/editor/scientific-editor.tsx — Основной редактор Tiptapcomponents/editor/editor-toolbar.tsx — Панель форматированияФункции:
mathBlock (KaTeX); модальное окно формул с предпросмотромСхема базы данных (шаблон Ring JSONB в data/schema.sql):
Ключевые компоненты:
components/editor/scientific-editor.tsx — Основной редактор Tiptapcomponents/editor/editor-toolbar.tsx — Панель форматированияФункции:
mathBlock (KaTeX); модальное окно формул с предпросмотромСхема базы данных (шаблон Ring JSONB в data/schema.sql):
publications: id, data (user_id, title, content, status, template_id), created_at, updated_atpublication_versions: id, data (publication_id, version_number, content, change_summary, created_by), created_at, updated_atAPI: GET/POST /api/publications, GET/PUT/DELETE /api/publications/[id], GET/POST /api/publications/[id]/versions (снимок/восстановление).
Функции:
Форматы экспорта:
publications: id, data (user_id, title, content, status, template_id), created_at, updated_atpublication_versions: id, data (publication_id, version_number, content, change_summary, created_by), created_at, updated_atAPI: GET/POST /api/publications, GET/PUT/DELETE /api/publications/[id], GET/POST /api/publications/[id]/versions (снимок/восстановление).
Функции:
Форматы экспорта:
publications: id, data (user_id, title, content, status, template_id), created_at, updated_atpublication_versions: id, data (publication_id, version_number, content, change_summary, created_by), created_at, updated_atAPI: GET/POST /api/publications, GET/PUT/DELETE /api/publications/[id], GET/POST /api/publications/[id]/versions (снимок/восстановление).
Функции:
Форматы экспорта:
# Редактор Tiptap (17 пакетов)
npm install @tiptap/react @tiptap/starter-kit @tiptap/extension-placeholder \
@tiptap/extension-highlight @tiptap/extension-typography \
@tiptap/extension-text-align @tiptap/extension-underline \
@tiptap/extension-subscript @tiptap/extension-superscript \
@tiptap/extension-table @tiptap/extension-table-row \
@tiptap/extension-table-cell @tiptap/extension-table-header \
@tiptap/extension-image @tiptap/extension-link \
@tiptap/extension-code-block-lowlight lowlight
# LaTeX
npm install katex react-katex
# Редактор Tiptap (17 пакетов)
npm install @tiptap/react @tiptap/starter-kit @tiptap/extension-placeholder \
@tiptap/extension-highlight @tiptap/extension-typography \
@tiptap/extension-text-align @tiptap/extension-underline \
@tiptap/extension-subscript @tiptap/extension-superscript \
@tiptap/extension-table @tiptap/extension-table-row \
@tiptap/extension-table-cell @tiptap/extension-table-header \
@tiptap/extension-image @tiptap/extension-link \
@tiptap/extension-code-block-lowlight lowlight
# LaTeX
npm install katex react-katex
# Редактор Tiptap (17 пакетов)
npm install @tiptap/react @tiptap/starter-kit @tiptap/extension-placeholder \
@tiptap/extension-highlight @tiptap/extension-typography \
@tiptap/extension-text-align @tiptap/extension-underline \
@tiptap/extension-subscript @tiptap/extension-superscript \
@tiptap/extension-table @tiptap/extension-table-row \
@tiptap/extension-table-cell @tiptap/extension-table-header \
@tiptap/extension-image @tiptap/extension-link \
@tiptap/extension-code-block-lowlight lowlight
# LaTeX
npm install katex react-katex
components/editor/
├── scientific-editor.tsx # Основной редактор с Tiptap
├── editor-toolbar.tsx # Панель форматирования
├── extensions/
│ └── latex-extension.ts # Рендеринг LaTeX
├── equation-editor.tsx # Модальное окно уравнений
├── figure-upload.tsx # Загрузка изображений
├── table-editor.tsx # Создание таблиц
├── version-history-panel.tsx # Браузер версий
└── export-dialog.tsx # Опции экспорта
features/publications/services/
├── publication-service.ts # CRUD-операции
├── pdf-export-service.ts # Генерация PDF
├── docx-export-service.ts # Экспорт Word
└── markdown-export-service.ts # Экспорт Markdown
components/editor/
├── scientific-editor.tsx # Основной редактор с Tiptap
├── editor-toolbar.tsx # Панель форматирования
├── extensions/
│ └── latex-extension.ts # Рендеринг LaTeX
├── equation-editor.tsx # Модальное окно уравнений
├── figure-upload.tsx # Загрузка изображений
├── table-editor.tsx # Создание таблиц
├── version-history-panel.tsx # Браузер версий
└── export-dialog.tsx # Опции экспорта
features/publications/services/
├── publication-service.ts # CRUD-операции
├── pdf-export-service.ts # Генерация PDF
├── docx-export-service.ts # Экспорт Word
└── markdown-export-service.ts # Экспорт Markdown
components/editor/
├── scientific-editor.tsx # Основной редактор с Tiptap
├── editor-toolbar.tsx # Панель форматирования
├── extensions/
│ └── latex-extension.ts # Рендеринг LaTeX
├── equation-editor.tsx # Модальное окно уравнений
├── figure-upload.tsx # Загрузка изображений
├── table-editor.tsx # Создание таблиц
├── version-history-panel.tsx # Браузер версий
└── export-dialog.tsx # Опции экспорта
features/publications/services/
├── publication-service.ts # CRUD-операции
├── pdf-export-service.ts # Генерация PDF
├── docx-export-service.ts # Экспорт Word
└── markdown-export-service.ts # Экспорт Markdown
| Метрика | Цель |
|---|---|
| Время рендеринга редактора | менее 100мс |
| Задержка автосохранения | менее 500мс |
| Время загрузки версии | менее 1с |
| Время экспорта PDF | менее 5с |
| Время экспорта Word | менее 3с |
| Покрытие тестами | более 80% |
| Оценка Lighthouse | более 90 |
| Метрика | Цель |
|---|---|
| Время рендеринга редактора | менее 100мс |
| Задержка автосохранения | менее 500мс |
| Время загрузки версии | менее 1с |
| Время экспорта PDF | менее 5с |
| Время экспорта Word | менее 3с |
| Покрытие тестами | более 80% |
| Оценка Lighthouse | более 90 |
| Метрика | Цель |
|---|---|
| Время рендеринга редактора | менее 100мс |
| Задержка автосохранения | менее 500мс |
| Время загрузки версии | менее 1с |
| Время экспорта PDF | менее 5с |
| Время экспорта Word | менее 3с |
| Покрытие тестами | более 80% |
| Оценка Lighthouse | более 90 |
| Риск | Решение |
|---|---|
| Кривая обучения Tiptap | Начать с starter-kit, добавлять расширения постепенно |
| Производительность LaTeX | Ленивый рендеринг уравнений вне области видимости |
| Потеря форматирования при экспорте | Тестирование со сложными документами, предпросмотр |
| Конфликты автосохранения | Обнаружение вкладок и UI разрешения конфликтов |
| Риск | Решение |
|---|---|
| Кривая обучения Tiptap | Начать с starter-kit, добавлять расширения постепенно |
| Производительность LaTeX | Ленивый рендеринг уравнений вне области видимости |
| Потеря форматирования при экспорте | Тестирование со сложными документами, предпросмотр |
| Конфликты автосохранения | Обнаружение вкладок и UI разрешения конфликтов |
| Риск | Решение |
|---|---|
| Кривая обучения Tiptap | Начать с starter-kit, добавлять расширения постепенно |
| Производительность LaTeX | Ленивый рендеринг уравнений вне области видимости |
| Потеря форматирования при экспорте | Тестирование со сложными документами, предпросмотр |
| Конфликты автосохранения | Обнаружение вкладок и UI разрешения конфликтов |
lib/file/FileService.ts — Абстракция загрузки файловlib/file/adapters/VercelAdapter.ts — Хранилище Vercel Blobfeatures/news/components/editor/rich-text-editor.tsx — Референс TinyMCEcomponents/vendor/store-logo-uploader.tsx — Паттерн drag & dropzemna-ai-scientific-editor-architecturezemna-ai-tiptap-integrationzemna-ai-latex-supportzemna-ai-version-history-systemzemna-ai-export-pipelinescientific-editor-componentauto-save-hookpdf-export-servicefigure-table-systemlib/file/FileService.ts — Абстракция загрузки файловlib/file/adapters/VercelAdapter.ts — Хранилище Vercel Blobfeatures/news/components/editor/rich-text-editor.tsx — Референс TinyMCEcomponents/vendor/store-logo-uploader.tsx — Паттерн drag & dropzemna-ai-scientific-editor-architecturezemna-ai-tiptap-integrationzemna-ai-latex-supportzemna-ai-version-history-systemzemna-ai-export-pipelinescientific-editor-componentauto-save-hookpdf-export-servicefigure-table-systemlib/file/FileService.ts — Абстракция загрузки файловlib/file/adapters/VercelAdapter.ts — Хранилище Vercel Blobfeatures/news/components/editor/rich-text-editor.tsx — Референс TinyMCEcomponents/vendor/store-logo-uploader.tsx — Паттерн drag & dropzemna-ai-scientific-editor-architecturezemna-ai-tiptap-integrationzemna-ai-latex-supportzemna-ai-version-history-systemzemna-ai-export-pipelinescientific-editor-componentauto-save-hookpdf-export-servicefigure-table-system