Проект с открытым исходным кодом
Утилита для сборки
vkr-builder
Выпускная квалификационная работа в DOCX и PDF
из файлов Markdown
Оформление по ГОСТ 7.32-2017
и стандарту ИТМО ЛНАОБУЧ-СМК-03-05-2022
Авторы: Max Barsukov, HiterretiH
Санкт-Петербург, 2026
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
Выпускная квалификационная работа сдаётся не только по содержанию, но и по оформлению: шрифт, интервалы, поля, стили заголовков, подписи под рисунками, сквозная нумерация объектов и содержание.
vkr-builder переносит оформление на сторону программы. Автор пишет главы в Markdown, а документ по ГОСТ 7.32-2017 [1] и требованиям ИТМО [2] собирается командой из одной строки [3]. Порядок работы показан на рисунке 1.
Требования другого вуза покрываются правкой конфигурации: оформление задаётся там, а не в тексте.
1 Разметка
Работа пишется в обычном Markdown. Отличие одно: у рисунка, таблицы, листинга и формулы есть подпись с ключом, а в тексте вы ссылаетесь на ключ, а не на номер. Так сделаны ссылки на рисунок 1 и листинг 1 в этом абзаце.

Рисунок {pipeline} - Схема обработки
Порядок разбора показан на рисунке [рис:pipeline].
Формула набирается в подмножестве LaTeX и попадает в документ редактируемым объектом Word, а её номер встаёт справа, у края текста:
2 Установка и запуск
2.1 Требования и платформы
Для сборки нужен Python 3.10 или новее. Движок вёрстки — Microsoft Word
с пакетом pywin32 (Windows) или LibreOffice (Windows, Linux, macOS).
Установленные зависимости показывает команда doctor.
git clone https://github.com/maxbarsukov/vkr-builder.git
cd vkr-builder
python -m venv .venv
.venv\Scripts\activate # Windows
source .venv/bin/activate # Linux / macOS
pip install -r requirements.txt
vkr-builder.bat doctor # что нашлось в системе
vkr-builder.bat build --pdf # собрать DOCX и PDF
2.2 Docker
Ставить Python и LibreOffice на свою систему не обязательно: то же самое делает готовый образ [3]. Каталог с работой подключается томом, результат остаётся в нём же.
docker pull nyapsilon/vkr-builder
docker run --rm -v "$PWD/example:/work/example" \
nyapsilon/vkr-builder build --pdf
ЗАКЛЮЧЕНИЕ
Markdown — обычный текст, и работать с ним умеет не только человек: правку главы можно поручить языковой модели, а разницу между версиями показывает git. vkr-builder закрывает единственное, чего Markdown не умеет сам: оформление по ГОСТу.
Спецификацию разметки можно целиком отдать ИИ-ассистенту перед генерацией главы; для Claude Code и Cursor правила уже лежат в репозитории.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
- ГОСТ 7.32-2017. Система стандартов по информации, библиотечному и издательскому делу. Отчёт о научно-исследовательской работе. Структура и правила оформления. – М.: Стандартинформ, 2017. – 27 с.
- Требования к выпускным квалификационным работам: ЛНАОБУЧ-СМК-03-05-2022, версия 4.0 [Электронный ресурс]. – Университет ИТМО. – URL: student.itmo.ru/files/1314 (дата обращения: 05.08.2026).
- vkr-builder [Электронный ресурс]: репозиторий проекта. – URL: github.com/maxbarsukov/vkr-builder (дата обращения: 05.08.2026).
- Документация проекта [Электронный ресурс]: правила разметки, команды, каталог проверок. – URL: github.com/maxbarsukov/vkr-builder/docs (дата обращения: 05.08.2026).
ПРИЛОЖЕНИЕ А
Команды
| Команда | Назначение |
|---|---|
build | Объединить Markdown и собрать DOCX |
pdf | Конвертировать готовый DOCX в PDF |
lint | Проверить Markdown на ошибки оформления |
watch | Автопересборка при изменении файлов |
doctor | Проверка зависимостей и движков |
init | Создать шаблон config.yaml |
Остальные команды, флаги, переменные окружения и коды возврата – в документации [4]. Проект распространяется по лицензии MIT.