Public docs site (MkDocs Material) — методички и регламенты
Find a file
2026-07-07 15:35:35 +03:00
data content: стартовые страницы под ФПМИ, переименование в «образовательный процесс» 2026-05-23 20:02:02 +03:00
docs content: добавить дисклеймер об экспериментальном статусе на главной 2026-05-23 22:07:07 +03:00
overrides init: MkDocs Material scaffold + Sveltia CMS config 2026-05-10 13:37:11 +03:00
.gitignore init: MkDocs Material scaffold + Sveltia CMS config 2026-05-10 13:37:11 +03:00
mkdocs.yml style: шрифт Inter вместо IBM Plex Sans (брендбук 2026-07-07) 2026-07-07 15:35:35 +03:00
README.md docs: переписать инструкцию редакторов и перейти на uv в README 2026-05-23 20:07:39 +03:00
requirements.txt init: MkDocs Material scaffold + Sveltia CMS config 2026-05-10 13:37:11 +03:00

edu.samcs.ru — образовательный процесс ФПМИ МФТИ

Стек: MkDocs Material (статика) + Sveltia CMS (редактор) + Forgejo (git-хранилище для нетехнических редакторов) + SAMCS SSO (вход через Keycloak).

Сайт: https://edu.samcs.ru/
Git: https://edugit.samcs.ru/samcs-opt/edu.samcs.ru
Редактор: https://edu.samcs.ru/admin/

Структура

.
├── mkdocs.yml         — конфиг MkDocs Material (FPMI брендинг, плагины)
├── requirements.txt   — Python зависимости (mkdocs-material, mkdocs-macros-plugin)
├── data/
│   └── people.yml     — канонические ФИО/контакты для подстановки {{ people.* }}
├── docs/
│   ├── index.md       — главная страница
│   ├── getting-started.md  — гайд для редакторов
│   ├── regulations/   — публичные регламенты
│   ├── methods/       — методички
│   ├── admin/         — Sveltia CMS entry point
│   └── assets/
│       ├── styles/    — кастомные CSS (FPMI цвета)
│       └── uploads/   — медиа, загруженные через CMS
└── overrides/         — кастомизация Material темы (если нужно)

Локальная разработка (для технических участников)

uv venv && source .venv/bin/activate
uv pip install -r requirements.txt
mkdocs serve   # http://127.0.0.1:8000

(Используем uv — быстрее и удобнее pip. Если uv не установлен: curl -LsSf https://astral.sh/uv/install.sh | sh.)

Редактирование (для всех остальных)

→ см. docs/getting-started.md.

Кратко: открой https://edu.samcs.ru/admin/, залогинься через SAMCS SSO, редактируй, save. Каждое сохранение — коммит в этот git-репозиторий с твоим авторством.

Как меняются ФИО руководства / контакты

Один файл — data/people.yml. Меняешь там — обновляется на всех страницах, где использовалось {{ people.head.name }} и т.п. Один git-коммит → весь сайт пересобран.

Деплой (пайплайн)

  1. Источник правды: этот git-репо в Forgejo.
  2. Триггер: webhook от Forgejo при каждом push в main.
  3. Билд: на VM cloud.ru, mkdocs build → артефакт в /var/www/edu.samcs.ru/.
  4. Раздача: Caddy file_serverhttps://edu.samcs.ru/.

Подробнее в infra/edu/README.md репо samcs-opt/work.samcs.ru.