Skip to main content

MGost

Библиотека позволяет пользоваться преимуществами MGost конвертера локально

Установка

Для начала необходимо получить API токен на официальном сайте конвертера

После создания ключа можно запустить библиотеку напрямую через uv (Рекомендуется):

uvx -p 3.13 mgost version

Или через pip:

python3.13 -m pip install mgost
python3.13 -m mgost version

Запуск

Для инициализации папки для проекта используйте mgost init. Первый запуск запросит API токен:

$ uvx -p 3.13 mgost init
API ключ не найден ни в переменных среды, ни в .env.
Введите код вручную или внесите его в вышеперечисленные источники
ARTICHAAPI_TOKEN=

После ввода токена, нужно выбрать проект:

ARTICHAAPI_TOKEN= ...
Текущий проект недействительный в облаке. Воспользуйтесь mgost init для инициализации проекта
Создать новый проект или синхронизировать существующий?
0. Создать новый проект
1. "Проект1"
2. "Проект2"
Действие: 

В зависимости от выбора, могут быть другие вопросы инициализации

Синхронизация

После инициализации проект можно синхронизировать и выполнять рендер. Команда mgost render синхронизирует проект с облаком и выполнит рендер.

$ mgost render
Текущий проект: Проект1
Синхронизация ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3/3
Начинаю рендер
Рендер успешно завершён
↓ output.docx ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00

В случае проблем с выполнением рендера, лог будет отображаться в консоли:

$ mgost render
Текущий проект: Проект1
Синхронизация ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3/3
Начинаю рендер
Рендер успешно завершён
    ИНФО: grafana-logo-3.png не существует. Изображение (рисунок) пропущен
↓ output.docx ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00

Структура проекта

src/mgost/
├── __main__.py               # Точка входа для `python -m mgost`
├── console.py                # Обёртка над typer/click для консольного вывода (прогресс, цвета, промпты)
├── api/
│   ├── api.py                # Класс ArtichaAPI — HTTP-клиент для работы с облаком (проекты, файлы, токены)
│   ├── actions.py            # Датаклассы действий синхронизации (загрузка/скачивание/перемещение файлов)
│   ├── caller.py             # Низкоуровневая функция выполнения HTTP-запроса с повторами
│   ├── exceptions.py         # Исключения API (WrongToken, ClientClosed, APIRequestError)
│   ├── remote_version.py     # Получение актуальной версии пакета с PyPI
│   ├── request.py            # Датакласс APIRequestInfo — описание одного запроса
│   └── schemas/
│       ├── general.py        # Общие Pydantic-схемы (TokenInfo)
│       └── mgost.py          # Pydantic-схемы предметной области (Project, ProjectFile, BuildResult и т.д.)
├── cli/
│   ├── app.py                # Создание typer.Typer приложения и обёртка main() с перехватом Ctrl+C
│   ├── callback.py           # Глобальный callback CLI (флаг -v, инициализация логирования)
│   ├── commands.py           # Определения команд CLI (version, token, init, sync, render)
│   └── async_commands.py     # Асинхронные реализации команд CLI
├── mgost/
│   ├── mgost.py              # Класс MGost — основной фасад: инициализация, синхронизация, рендер проекта
│   ├── sync.py               # Логика синхронизации файлов проекта с облаком
│   ├── progress_utils.py     # Кастомные колонки rich.progress (например, отображение байт/штук)
│   └── utils.py              # Вспомогательные функции (валидация токена и проекта)
└── settings/
    ├── settings.py           # Класс Settings — чтение токена/конфига из env, .env, команды
    └── logging.py            # Настройка логирования
tests/                        # Тесты (pytest), структура повторяет src/mgost

Release files for MGost 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for MGost 1.0.0
File Size Uploaded
mgost-1.0.0.tar.gz 38.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for MGost 1.0.0
File Interpreter ABI Platform
mgost-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 69.5 kB

Release files / mgost-1.0.0.tar.gz

Download URL mgost-1.0.0.tar.gz
Size 38.8 kB
Tags Source
SHA-256 checksum
How to use checksums
bfb992662f38472d2fca86678f46b6f662b53dabbc97835b6a35081435118169
BLAKE2b-256 checksum
How to use checksums
94b57c26b2046f59dc122acbd78a50a23d3e66a85dbaae2e7550fc128e3281fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.12 {"installer":{"name":"uv","version":"0.12.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / mgost-1.0.0-py3-none-any.whl

Download URL mgost-1.0.0-py3-none-any.whl
Size 30.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5c54ce040ca1bd6cc04da8e73cd96ac1f42f2c4f889f1ea3db519ec161cd251d
BLAKE2b-256 checksum
How to use checksums
d430bbb191ad0b64db2ef9b2e048d4cf3d3ffc2c7b830853d44723e91b03e76e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.12 {"installer":{"name":"uv","version":"0.12.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.11

2 release files

0.4.10

2 release files

0.4.9

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.3

2 release files

0.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page