Сборка документации¶
Стилистика и правила оформления¶
Все исходники хранятся в директории src/
в формате Markdown (формат файлов .md
).
Структура проекта и его конфигурация описываются в файле mkdocs.yml
в корне репозитория.
Структура исходных файлов документации и содержание должны быть согласованными.
Все ссылки на соседние страницы и изображения должны быть относительными.
Каждое предложение должно быть на одной строке. Это даёт более наглядную разницу (diff) в тексте при работе с git.
Абзацы и списки должны отделяться 1 пустой строкой сверху и снизу.
Допустимо использовать любые стилистические возможности темы Material for MkDocs и самого mkdocs, но не следует визуально перегружать текст. Документацию по ним см. по ссылкам ниже.
Добавление изображений¶
Все изображения хранятся только в директории src/assets/img/
и вложенных в неё.
Общая суть такова:
- чем больше размеры, тем хуже должно быть качество;
- чем меньше размеры, тем чётче должен быть текст.
Каждое изображение должно:
- быть сохранено в формате jpg;
- иметь размер неболее 150 Кб;
- быть сжатым с качеством 65-80% от исходного;
- быть размером до 1500 px по наибольшей стороне.
Если на изображении есть текст, он должен оставаться различимым и читаемым.
Но если на изображении есть любые конфиденциальные данные и его невозможно кадрировать без потери смысла, то их необходимо скрыть.
Хорошей практикой будет использовать спойлеры для скрытия больших и/или идущих подряд нескольких изображений, например:
Совершенно любой текст, lorem ipsum dolor sit amet.
Совершенно любой текст, lorem ipsum dolor sit amet.
??? quote "В этом спойлере несколько больших картинок"


Продолжение текста, lorem ipsum dolor sit amet.
Продолжение текста, lorem ipsum dolor sit amet.
Эти простые правила позволят поддерживать репозиторий достаточно компактным, а страницы делать комфортными для чтения, экономя трафик для мобильных устройств.
Стек¶
Запуск mkdocs в контейнере¶
make live
Перегенерирует документацию на лету сразу после изменения файлов.
Открывает localhost:3000 для просмотра изменений в реальном времени.
Генерация статических файлов¶
make build
Генерирует статические файлы, которую можно версионировать и хранить/деплоить отдельно.
Открывает localhost:8080/docs для просмотра сгенерированной документации.
Готовый скомпилированный статический сайт с документацией находится в директории site/
. Он же хранится в репозитории вместе с исходными файлами, потому что:
- я посчитал это более удобным для деплоя: ради редких обновлений нет смысла тратить ресурсы серверов на ci/cd, actions по хукам и перманентную работу
mkdocs
в режимеbuild
; - я посчитал это более удобным для использования: можно в любой момент открыть актуальную документацию в браузере через
site/index.html
без необходимостиmake
иdocker
.
Пересборка должна происходить перед каждым коммитом.