Быстрый старт
Платформа diplodoc разрабатывается на осноне набора независимых модулей, расположенных в Github организации diplodoc-platform.
Каждый модуль можно разрабатывать как по отдельности, так и в составе метапакета.
Самый простой способ начать разрабатку любого модуля в системе - запустить преднастроенный GitHub Codespace в соответствующем репозитории.
Подробнее про работу с GitHub Codespaces можно почитать в официальной документации.
Подготовка модуля
После создания codespace дождитесь выполнения postCreateCommand (~3мин).
На этом этапе проходит несколько подготовительных действий:
- установка необходимых модулю NodeJS пакетов
- предварительная сборка модуля (
npm run build
) - основные проверки качества кода (
npm run lint
) - основные тесты (
npm run test
)
Когда подготовка успешно завершена, т.е. модуль собирается и проходит основные проверки - он готов к внесению изменений.
Подготовка метапакета
Разработка в рамках метапакета упрощает одновременное внесение изменений сразу в несколько модулей.
После создания codespace дождитесь выполнения postCreateCommand (~3мин).
На этом этапе проходит несколько подготовительных действий:
- связывание git субмодулей
- установка необходимых NodeJS пакетов в режиме npm workspaces
- предварительная сборка графа модулей для проекта CLI (
npx nx build @diplodoc/cli
)
По умолчанию при инициализации метапакета не запускаются проверки качества кода и тесты.
Их можно запустить самостоятельно выполнив в корневой директории npm run lint
и npm run test
соответственно.
При этом выполнятся соответствующие проверки во всех зависимых модулях.
Когда подготовка успешно завершена, т.е. модуль собирается и проходит основные проверки - он готов к внесению изменений.
Внесение изменений
В процессе внесения изменений необходимо убедиться, что проверки качества кода (npm run lint
и npm run test
) в измененном модуле все еще проходят без ошибок.
После этого можно приступить к оформлению коммитов и пулл реквеста.