Zemna.AI
    zemna.ai

    Scientific Publication Editor

    📝
    Editor
    ResearchersNew
    PublicationsLive
    Templates
    Концепции
    Быстрый старт
    Collaboration
    AI Assistant
    Roadmap
    Documentation
    v1.3.2 © Trinity
    PrivacyContact
    Ring Platform Logo

    Loading Documentation Hub...

    Scanning documentation library

    Documentation

    📚 Documentation

    AI Research Assistant
    Citations & References
    Collaboration
    First Success Validation
    Getting Started
    Pricing
    Research Tools
    Support
    Добро пожаловать в Zemna.AI
    Документация Zemna.AI
    Дорожная карта разработки
    Написание и редактирование
    Настройка учётной записи
    Научный редактор
    Фаза 1: Фундамент
    Фаза 2: Улучшение научного редактора
    Фаза 3: Менеджер цитат и библиографии
    Фаза 4: Совместная работа в реальном времени
    Фаза 5: AI-ассистент для исследований
    Фаза 6: Публикация и экспорт

    🌾 Quick Access

    📖 Welcome to GreenFood.live
    👨‍🌾 Complete Farmer Guide
    🛒 Complete Buyer Guide
    💰 DAAR/DAARION Token System
    Zemna.AI
    zemna.ai

    Scientific Publication Editor

    📝
    Editor
    ResearchersNew
    PublicationsLive
    Templates
    Концепции
    Быстрый старт
    Collaboration
    AI Assistant
    Roadmap
    Documentation
    v1.3.2 © Trinity
    PrivacyContact
    Ring Platform Logo

    Loading Documentation Hub...

    Scanning documentation library

    Documentation

    📚 Documentation

    AI Research Assistant
    Citations & References
    Collaboration
    First Success Validation
    Getting Started
    Pricing
    Research Tools
    Support
    Добро пожаловать в Zemna.AI
    Документация Zemna.AI
    Дорожная карта разработки
    Написание и редактирование
    Настройка учётной записи
    Научный редактор
    Фаза 1: Фундамент
    Фаза 2: Улучшение научного редактора
    Фаза 3: Менеджер цитат и библиографии
    Фаза 4: Совместная работа в реальном времени
    Фаза 5: AI-ассистент для исследований
    Фаза 6: Публикация и экспорт

    🌾 Quick Access

    📖 Welcome to GreenFood.live
    👨‍🌾 Complete Farmer Guide
    🛒 Complete Buyer Guide
    💰 DAAR/DAARION Token System
    Ring Platform Logo

    Loading Documentation Hub...

    Scanning documentation library

    Documentation

    📚 Documentation

    AI Research Assistant
    Citations & References
    Collaboration
    First Success Validation
    Getting Started
    Pricing
    Research Tools
    Support
    Добро пожаловать в Zemna.AI
    Документация Zemna.AI
    Дорожная карта разработки
    Написание и редактирование
    Настройка учётной записи
    Научный редактор
    Фаза 1: Фундамент
    Фаза 2: Улучшение научного редактора
    Фаза 3: Менеджер цитат и библиографии
    Фаза 4: Совместная работа в реальном времени
    Фаза 5: AI-ассистент для исследований
    Фаза 6: Публикация и экспорт

    🌾 Quick Access

    📖 Welcome to GreenFood.live
    👨‍🌾 Complete Farmer Guide
    🛒 Complete Buyer Guide
    💰 DAAR/DAARION Token System
    Ring Platform Logo

    Завантаження документації...

    Підготовка контенту платформи Ring

    Ring Platform Logo

    Завантаження документації...

    Підготовка контенту платформи Ring

    Ring Platform Logo

    Завантаження документації...

    Підготовка контенту платформи Ring

    Фаза 2: Улучшение научного редактора

    Статус: 🔄 В процессе (спринты 2.1–2.3 завершены; остаются 2.4–2.5)
    Длительность: 2-3 недели
    Предварительные требования: Завершённая Фаза 1

    Обзор

    Фаза 2 превращает базовый contentEditable редактор в научный редактор публикаций мирового класса с расширенным редактированием текста, поддержкой LaTeX-уравнений, автосохранением, историей версий и возможностями экспорта.

    Реализовано (2026-02-25): Форматированный текст (Tiptap), LaTeX (KaTeX + модальное окно формул), автосохранение (задержка 30 с), история версий (снимок/восстановление), схема публикаций и API. Подробная документация: Научный редактор.


    🎯 Ключевые задачи

    1. Расширенный текстовый редактор — Редактор на базе Tiptap с научными расширениями ✅
    2. LaTeX-уравнения — Рендеринг KaTeX для математического контента ✅
    3. Система автосохранения — Непрерывное сохранение с историей версий ✅
    4. Поддержка рисунков и таблиц — Загрузка изображений и создание таблиц 🚧
    5. Функциональность экспорта — Экспорт в PDF, Word и Markdown 🚧

    📅 Разбивка по спринтам

    Спринт 2.1: Основа расширенного текстового редактора (1 неделя) ✅ ЗАВЕРШЕНО

    • Установка зависимостей Tiptap (17 пакетов)
    • Создание компонента ScientificEditor

    Фаза 2: Улучшение научного редактора

    Статус: 🔄 В процессе (спринты 2.1–2.3 завершены; остаются 2.4–2.5)
    Длительность: 2-3 недели
    Предварительные требования: Завершённая Фаза 1

    Обзор

    Фаза 2 превращает базовый contentEditable редактор в научный редактор публикаций мирового класса с расширенным редактированием текста, поддержкой LaTeX-уравнений, автосохранением, историей версий и возможностями экспорта.

    Реализовано (2026-02-25): Форматированный текст (Tiptap), LaTeX (KaTeX + модальное окно формул), автосохранение (задержка 30 с), история версий (снимок/восстановление), схема публикаций и API. Подробная документация: Научный редактор.


    🎯 Ключевые задачи

    1. Расширенный текстовый редактор — Редактор на базе Tiptap с научными расширениями ✅
    2. LaTeX-уравнения — Рендеринг KaTeX для математического контента ✅
    3. Система автосохранения — Непрерывное сохранение с историей версий ✅
    4. Поддержка рисунков и таблиц — Загрузка изображений и создание таблиц 🚧
    5. Функциональность экспорта — Экспорт в PDF, Word и Markdown 🚧

    📅 Разбивка по спринтам

    Спринт 2.1: Основа расширенного текстового редактора (1 неделя) ✅ ЗАВЕРШЕНО

    • Установка зависимостей Tiptap (17 пакетов)
    • Создание компонента ScientificEditor

    Фаза 2: Улучшение научного редактора

    Статус: 🔄 В процессе (спринты 2.1–2.3 завершены; остаются 2.4–2.5)
    Длительность: 2-3 недели
    Предварительные требования: Завершённая Фаза 1

    Обзор

    Фаза 2 превращает базовый contentEditable редактор в научный редактор публикаций мирового класса с расширенным редактированием текста, поддержкой LaTeX-уравнений, автосохранением, историей версий и возможностями экспорта.

    Реализовано (2026-02-25): Форматированный текст (Tiptap), LaTeX (KaTeX + модальное окно формул), автосохранение (задержка 30 с), история версий (снимок/восстановление), схема публикаций и API. Подробная документация: Научный редактор.


    🎯 Ключевые задачи

    1. Расширенный текстовый редактор — Редактор на базе Tiptap с научными расширениями ✅
    2. LaTeX-уравнения — Рендеринг KaTeX для математического контента ✅
    3. Система автосохранения — Непрерывное сохранение с историей версий ✅
    4. Поддержка рисунков и таблиц — Загрузка изображений и создание таблиц 🚧
    5. Функциональность экспорта — Экспорт в PDF, Word и Markdown 🚧

    📅 Разбивка по спринтам

    Спринт 2.1: Основа расширенного текстового редактора (1 неделя) ✅ ЗАВЕРШЕНО

    • Установка зависимостей Tiptap (17 пакетов)
    • Создание компонента ScientificEditor
  1. Создание компонента EditorToolbar
  2. Интеграция редактора на страницу редактора
  3. Ключевые компоненты:

    • components/editor/scientific-editor.tsx — Основной редактор Tiptap
    • components/editor/editor-toolbar.tsx — Панель форматирования

    Спринт 2.2: Поддержка LaTeX-уравнений (1 неделя) ✅ ЗАВЕРШЕНО

    • Установка зависимостей KaTeX
    • Создание расширения Tiptap для LaTeX
    • Создание модального окна EquationEditor
    • Добавление кнопки уравнений на панель инструментов

    Функции:

    • Блочная математика через узел mathBlock (KaTeX); модальное окно формул с предпросмотром
    • Переключатель display/inline; кнопки шаблонов (дробь, сумма, интеграл, матрица)

    Спринт 2.3: Автосохранение и история версий (1 неделя) ✅ ЗАВЕРШЕНО

    • Создание схемы базы данных публикаций
    • Создание PublicationService
    • Создание хука useAutoSave
    • Создание VersionHistoryPanel
    • Создание API-маршрутов

    Схема базы данных (шаблон Ring JSONB в data/schema.sql):

  4. Создание компонента EditorToolbar
  5. Интеграция редактора на страницу редактора
  6. Ключевые компоненты:

    • components/editor/scientific-editor.tsx — Основной редактор Tiptap
    • components/editor/editor-toolbar.tsx — Панель форматирования

    Спринт 2.2: Поддержка LaTeX-уравнений (1 неделя) ✅ ЗАВЕРШЕНО

    • Установка зависимостей KaTeX
    • Создание расширения Tiptap для LaTeX
    • Создание модального окна EquationEditor
    • Добавление кнопки уравнений на панель инструментов

    Функции:

    • Блочная математика через узел mathBlock (KaTeX); модальное окно формул с предпросмотром
    • Переключатель display/inline; кнопки шаблонов (дробь, сумма, интеграл, матрица)

    Спринт 2.3: Автосохранение и история версий (1 неделя) ✅ ЗАВЕРШЕНО

    • Создание схемы базы данных публикаций
    • Создание PublicationService
    • Создание хука useAutoSave
    • Создание VersionHistoryPanel
    • Создание API-маршрутов

    Схема базы данных (шаблон Ring JSONB в data/schema.sql):

  7. Создание компонента EditorToolbar
  8. Интеграция редактора на страницу редактора
  9. Ключевые компоненты:

    • components/editor/scientific-editor.tsx — Основной редактор Tiptap
    • components/editor/editor-toolbar.tsx — Панель форматирования

    Спринт 2.2: Поддержка LaTeX-уравнений (1 неделя) ✅ ЗАВЕРШЕНО

    • Установка зависимостей KaTeX
    • Создание расширения Tiptap для LaTeX
    • Создание модального окна EquationEditor
    • Добавление кнопки уравнений на панель инструментов

    Функции:

    • Блочная математика через узел mathBlock (KaTeX); модальное окно формул с предпросмотром
    • Переключатель display/inline; кнопки шаблонов (дробь, сумма, интеграл, матрица)

    Спринт 2.3: Автосохранение и история версий (1 неделя) ✅ ЗАВЕРШЕНО

    • Создание схемы базы данных публикаций
    • Создание PublicationService
    • Создание хука useAutoSave
    • Создание VersionHistoryPanel
    • Создание API-маршрутов

    Схема базы данных (шаблон Ring JSONB в data/schema.sql):

    • publications: id, data (user_id, title, content, status, template_id), created_at, updated_at
    • publication_versions: id, data (publication_id, version_number, content, change_summary, created_by), created_at, updated_at

    API: GET/POST /api/publications, GET/PUT/DELETE /api/publications/[id], GET/POST /api/publications/[id]/versions (снимок/восстановление).

    Спринт 2.4: Поддержка рисунков и таблиц (1 неделя)

    • Создание компонента FigureUpload
    • Создание компонента TableEditor
    • Создание системы перекрёстных ссылок
    • Интеграция сервиса загрузки файлов

    Функции:

    • Загрузка изображений перетаскиванием
    • Подписи и нумерация рисунков
    • Создание таблиц с управлением строками/столбцами
    • Перекрёстные ссылки (Рисунок 1, Таблица 2)

    Спринт 2.5: Функциональность экспорта (1 неделя)

    • Установка зависимостей для экспорта
    • Создание PDFExportService
    • Создание DocxExportService
    • Создание MarkdownExportService
    • Создание компонента ExportDialog
    • Добавление кнопки экспорта на панель инструментов

    Форматы экспорта:

    • publications: id, data (user_id, title, content, status, template_id), created_at, updated_at
    • publication_versions: id, data (publication_id, version_number, content, change_summary, created_by), created_at, updated_at

    API: GET/POST /api/publications, GET/PUT/DELETE /api/publications/[id], GET/POST /api/publications/[id]/versions (снимок/восстановление).

    Спринт 2.4: Поддержка рисунков и таблиц (1 неделя)

    • Создание компонента FigureUpload
    • Создание компонента TableEditor
    • Создание системы перекрёстных ссылок
    • Интеграция сервиса загрузки файлов

    Функции:

    • Загрузка изображений перетаскиванием
    • Подписи и нумерация рисунков
    • Создание таблиц с управлением строками/столбцами
    • Перекрёстные ссылки (Рисунок 1, Таблица 2)

    Спринт 2.5: Функциональность экспорта (1 неделя)

    • Установка зависимостей для экспорта
    • Создание PDFExportService
    • Создание DocxExportService
    • Создание MarkdownExportService
    • Создание компонента ExportDialog
    • Добавление кнопки экспорта на панель инструментов

    Форматы экспорта:

    • publications: id, data (user_id, title, content, status, template_id), created_at, updated_at
    • publication_versions: id, data (publication_id, version_number, content, change_summary, created_by), created_at, updated_at

    API: GET/POST /api/publications, GET/PUT/DELETE /api/publications/[id], GET/POST /api/publications/[id]/versions (снимок/восстановление).

    Спринт 2.4: Поддержка рисунков и таблиц (1 неделя)

    • Создание компонента FigureUpload
    • Создание компонента TableEditor
    • Создание системы перекрёстных ссылок
    • Интеграция сервиса загрузки файлов

    Функции:

    • Загрузка изображений перетаскиванием
    • Подписи и нумерация рисунков
    • Создание таблиц с управлением строками/столбцами
    • Перекрёстные ссылки (Рисунок 1, Таблица 2)

    Спринт 2.5: Функциональность экспорта (1 неделя)

    • Установка зависимостей для экспорта
    • Создание PDFExportService
    • Создание DocxExportService
    • Создание MarkdownExportService
    • Создание компонента ExportDialog
    • Добавление кнопки экспорта на панель инструментов

    Форматы экспорта:

    • PDF: Форматирование научной статьи, отрендеренные уравнения
    • Word: Редактируемый DOCX с сохранённым форматированием
    • Markdown: С метаданными frontmatter

    📦 Зависимости

    NPM-пакеты для установки

    • PDF: Форматирование научной статьи, отрендеренные уравнения
    • Word: Редактируемый DOCX с сохранённым форматированием
    • Markdown: С метаданными frontmatter

    📦 Зависимости

    NPM-пакеты для установки

    • PDF: Форматирование научной статьи, отрендеренные уравнения
    • Word: Редактируемый DOCX с сохранённым форматированием
    • Markdown: С метаданными frontmatter

    📦 Зависимости

    NPM-пакеты для установки

    # Редактор 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 разрешения конфликтов

    🔗 Используемые активы Ring Platform

    • lib/file/FileService.ts — Абстракция загрузки файлов
    • lib/file/adapters/VercelAdapter.ts — Хранилище Vercel Blob
    • features/news/components/editor/rich-text-editor.tsx — Референс TinyMCE
    • components/vendor/store-logo-uploader.tsx — Паттерн drag & drop

    📚 Обновления AI-CONTEXT

    Концепции для создания

    • zemna-ai-scientific-editor-architecture
    • zemna-ai-tiptap-integration
    • zemna-ai-latex-support
    • zemna-ai-version-history-system
    • zemna-ai-export-pipeline

    Реализации для документирования

    • scientific-editor-component
    • auto-save-hook
    • pdf-export-service
    • figure-table-system

    ✅ Чеклист деплоя


    🔗 Используемые активы Ring Platform

    • lib/file/FileService.ts — Абстракция загрузки файлов
    • lib/file/adapters/VercelAdapter.ts — Хранилище Vercel Blob
    • features/news/components/editor/rich-text-editor.tsx — Референс TinyMCE
    • components/vendor/store-logo-uploader.tsx — Паттерн drag & drop

    📚 Обновления AI-CONTEXT

    Концепции для создания

    • zemna-ai-scientific-editor-architecture
    • zemna-ai-tiptap-integration
    • zemna-ai-latex-support
    • zemna-ai-version-history-system
    • zemna-ai-export-pipeline

    Реализации для документирования

    • scientific-editor-component
    • auto-save-hook
    • pdf-export-service
    • figure-table-system

    ✅ Чеклист деплоя


    🔗 Используемые активы Ring Platform

    • lib/file/FileService.ts — Абстракция загрузки файлов
    • lib/file/adapters/VercelAdapter.ts — Хранилище Vercel Blob
    • features/news/components/editor/rich-text-editor.tsx — Референс TinyMCE
    • components/vendor/store-logo-uploader.tsx — Паттерн drag & drop

    📚 Обновления AI-CONTEXT

    Концепции для создания

    • zemna-ai-scientific-editor-architecture
    • zemna-ai-tiptap-integration
    • zemna-ai-latex-support
    • zemna-ai-version-history-system
    • zemna-ai-export-pipeline

    Реализации для документирования

    • scientific-editor-component
    • auto-save-hook
    • pdf-export-service
    • figure-table-system

    ✅ Чеклист деплоя

    • Все npm-пакеты установлены и зафиксированы
    • Миграции базы данных применены
    • Переменные окружения настроены
    • Файловое хранилище (Vercel Blob) настроено
    • API-маршруты протестированы
    • Сервисы экспорта протестированы с образцами документов
    • Бенчмарки производительности достигнуты
    • Аудит доступности пройден
    • Все npm-пакеты установлены и зафиксированы
    • Миграции базы данных применены
    • Переменные окружения настроены
    • Файловое хранилище (Vercel Blob) настроено
    • API-маршруты протестированы
    • Сервисы экспорта протестированы с образцами документов
    • Бенчмарки производительности достигнуты
    • Аудит доступности пройден
    • Все npm-пакеты установлены и зафиксированы
    • Миграции базы данных применены
    • Переменные окружения настроены
    • Файловое хранилище (Vercel Blob) настроено
    • API-маршруты протестированы
    • Сервисы экспорта протестированы с образцами документов
    • Бенчмарки производительности достигнуты
    • Аудит доступности пройден

    ← Фаза 1: Фундамент | Фаза 3: Менеджер цитат →

    # Экспорт
    npm install @react-pdf/renderer docx file-saver

    ← Фаза 1: Фундамент | Фаза 3: Менеджер цитат →

    # Экспорт
    npm install @react-pdf/renderer docx file-saver

    ← Фаза 1: Фундамент | Фаза 3: Менеджер цитат →

    # Экспорт
    npm install @react-pdf/renderer docx file-saver