@webdoky/content-processor
v1.24.1
Published
Content processor for WebDoky project
Downloads
284
Readme
Обробник вмісту проекту webdoky.org
Тут міститься вся логіка перед- і постобробки статей webdoky.org.
Цей пакунок призначений не для використання окремим продуктом, а для вміщення всієї логіки, яка стосується обробки вмісту, окремо від презентаційної логіки самого застосунку. Звісно, для забезпечення потреб розробки, його можна запустити окремо (зазвичай це корисно для швидкого тестування макросів).
Початок роботи
Склонуйте цей репозиторій (разом з підмодулями) у будь-яке зручне місце:
git clone --recurse-submodules [email protected]:webdoky/content-processor.git
Перейдіть всередину і встановіть необхідні залежності:
yarn
Якщо ця команда викинула помилку — впевніться, що у вас встановлено NodeJs, NPM та Yarn
Зберіть проект (під час первинного розгортання це необов'язково, адже ця команда має автоматично виконатися згідно з гуком
postinstall
):yarn build
Запустіть проект:
yarn start
В код проекта вже зашита певна усталена конфігурація, достатня для того, щоб запустити логіку і опрацювати нею весь масив статей так, як це відбувається під час збирання застосунка.
Типовий процес розробки складається з таких кроків:
Внесення змін до логіки.
Запуск команди
yarn build
для компіляції TS-коду в JS.Запуск команди
yarn start
для прогону логіки.
Структура файлів репозиторію
./src
— вихідні файли пакунка./external
— підмодулі з текстовим вмістом./cache
— результат роботи пакунка: оброблений і підготовлений вміст, а також необхідні для його коректного відображення метадані. Все оформлено у JSON-файли, у структуру, яка повторює структуру вихідного вмісту../build
,./dist
— результати компіляції та збирання проекта, призначені для різних споживачів.
Архітектура
Registry
— основний блок логіки. Зчитує статті, збирає їх в реєстр, і обробляє (деякі блоки статей потребують доступу до інших статей). Поряд також знаходяться утиліти для роботи з синтаксичним деревом документів.runner
— обгортка для організації запуску основної логіки та її вводу і виводу. Відповідає за керування реєстром, передачу реєстрові посилань на файли статей, отримання від реєстру вже оброблених статей, і складання цих статей у кеш.components
— абстраговані значення, які використовуються всередині означених перетворень, проте мають стосунок радше до презентаційного застосунку, аніж до самої логіки перетворень._starter.ts
— обгортка для локального запуску пакунку.