feat(site): добавлен MkDocs Material сайт с CI/CD на GitHub Pages

- Зачем:
  - роадмап нуждается в презентабельном виде с навигацией и поиском, а не только GitHub README.
- Что:
  - создан mkdocs.yml (Material, docs_dir: ., поиск на русском, тёмная/светлая тема).
  - создан .github/workflows/deploy-site.yml (push в main → сборка → GitHub Pages).
  - адаптирован Markdown для dual compatibility (GitHub + MkDocs): пустые строки перед списками, отступы 2sp→4sp, заголовки README #→## для корректного TOC.
  - заменены em-dash на запятые в 4 заголовках dwh-modeling/README.md (фикс расхождения якорей).
  - добавлены правила Markdown Style и команды MkDocs/Playwright в AGENTS.md.
- Проверка:
  - uv run --with 'mkdocs-material==9.6.14' --with 'mkdocs-same-dir==0.1.3' mkdocs build --strict
This commit is contained in:
2026-03-27 22:57:15 +03:00
parent 721ed4163b
commit a1f2643841
8 changed files with 306 additions and 104 deletions
+73
View File
@@ -0,0 +1,73 @@
site_name: "DE Roadmap — Data Engineering с нуля до middle"
site_url: https://dementev-dev.github.io/de-roadmap/
site_description: "Роадмап по Data Engineering: SQL, Python, Airflow, Greenplum и далее"
site_author: Dmitry Dementev
repo_url: https://github.com/dementev-dev/de-roadmap
repo_name: dementev-dev/de-roadmap
docs_dir: .
site_dir: site
exclude_docs: |
project/
postgres-bookings/
.github/
.claude/
site/
AGENTS.md
CLAUDE.md
COMMIT_RULES.md
LICENSE
.gitignore
mkdocs.yml
dwh-modeling/TODO.md
nav:
- Роадмап: README.md
- Моделирование данных:
- Введение: dwh-modeling/README.md
- SCD: dwh-modeling/SCD.md
- Data Vault: dwh-modeling/DataVault.md
- "Домашка: STG → DDS → DM": dwh-modeling/Homework_Customer_Status_DDS_DM.md
theme:
name: material
language: ru
palette:
- scheme: default
primary: indigo
accent: indigo
toggle:
icon: material/brightness-7
name: Тёмная тема
- scheme: slate
primary: indigo
accent: indigo
toggle:
icon: material/brightness-4
name: Светлая тема
features:
- navigation.top
- navigation.tracking
- search.suggest
- search.highlight
- toc.follow
- content.code.copy
markdown_extensions:
- toc:
slugify: !!python/object/apply:pymdownx.slugs.slugify
kwds:
case: lower
permalink: true
- admonition
- pymdownx.details
- pymdownx.superfences
- pymdownx.highlight
- attr_list
plugins:
- same-dir
- search:
lang: ru