Все проекты
Музеи и госсектор В разработке

Скрипторий — конструктор подарочной книги

Веб-редактор, в котором команда верстает подарочное издание «Дневника» Клавихо: компоненты оформления, совместная правка, PDF и согласование страниц

Моя роль
Автор: вёрстка книги и редактор
Период
2026 — н.в.
Заказчик
Центр исламской цивилизации в Узбекистане

Центр исламской цивилизации готовит подарочное издание «Дневника путешествия в Самарканд ко двору Амира Темура» Руи Гонсалеса де Клавихо: формат 240×330 мм, 22 главы и эпилог, оформление в духе европейской иллюминированной рукописи XV века. На мне техническая часть книги. Сначала я собирал вёрстку скриптами на Python и за 30 сборок отработал шрифт Monomakh, рамки, бумагу и факсимиле. Текст в каждой сборке сверялся с исходником слово в слово по текстовому слою PDF.

Скриптами книгу правит только разработчик, а дизайнерам и редакторам нужно менять её самим. Поэтому я пишу Скрипторий — веб-редактор, в котором страница собирается из готовых компонентов: бумаги, рамок, заставок, буквиц, миниатюр, факсимиле и текста. Над книгой одновременно работают несколько человек, все правки сохраняются на сервере с полной историей, а страницы согласуются через рабочую группу в Telegram.

Что сделано

  • Редактор на React 19: слои страницы с точностью до миллиметра, сетка, магнит, правка разворота, обтекание иллюстраций текстом
  • Совместная правка в реальном времени: комнаты на WebSocket, слияние изменений по полям, конфликты без потери чужих правок
  • PDF собирается в браузере: встроенные шрифты и выделяемый Unicode-текст поверх оформления
  • Библиотека из 449 компонентов, из них 132 буквицы в четырёх оформлениях; загрузка PSD и TIFF до 5 ГБ с переводом CMYK в sRGB
  • История книги: неизменяемые снимки версий, журнал действий с цепочкой хешей, личные аккаунты
  • API для ИИ-ассистентов по OpenAPI: синхронизация с подтверждением, защита от устаревших правок, удалять ключам нельзя
  • Согласование через Telegram: бот архивирует переписку группы в SQLite и зашифрованное S3, решения по страницам привязаны к сообщениям
  • 72 теста и 13 браузерных сценариев на Playwright; деплой готовым образом из GHCR с откатом по healthcheck

Стек

  • Python
  • Node.js
  • Docker
  • MinIO / S3
  • GitHub Actions
  • GHCR / Docker Registry
  • JavaScript
  • React
  • Vite
  • Playwright

Ещё в этой категории

Музеи и госсектор В продакшене

WOSCU — society.uz и woscu.org

Портал о культурном наследии Узбекистана: рукописи, эпиграфика, памятники, издания, лекции и фильмы

Backend-разработчик · DevOps 2022 — н.в.

  • Python
  • Django
  • Django REST Framework
  • Celery
  • PostgreSQL
  • Docker
  • Nginx