Skip to main content

Инструмент сборки модульных плагинов для exteraGram в один файл

Project description

catalib

Документация: raito-kyokai.gitbook.io/catalib

Инструмент сборки модульных плагинов для exteraGram.

exteraGram загружает плагин как ровно один файл <plugin_id>.py. catalib позволяет разрабатывать плагин в виде нормального дерева пакетов (папки, подпапки, несколько модулей) и собирать его в один самодостаточный .py, пригодный для штатной установки и распространения. Внутрь собранного файла встраивается компактный загрузчик на основе sys.meta_path, благодаря которому обычные import между модулями плагина работают без изменений, а трейсбеки указывают на исходные файлы.

Состав

  • CLI catalib с командами build, watch, init.
  • Ядро сборки (bundler) и встраиваемый рантайм-загрузчик.
  • Валидация метаданных плагина по правилам exteraGram (статический разбор через AST).
  • Рантайм-хелперы, импортируемые из плагина: безопасные импорты SDK с заглушками для офлайн-тестов, утилиты потоков, хуков и настроек.
  • Деплой на устройство через ADB и перезагрузка плагина.

Требования

  • Python 3.11 и новее (соответствует среде Chaquopy внутри exteraGram).

Установка

pip install catalib

Документация

Полное руководство пользователя опубликовано в GitBook: https://raito-kyokai.gitbook.io/catalib — установка, быстрый старт, руководство, CLI, деплой, внутреннее устройство, примеры, решение проблем, публикация в PyPI и настройка GitBook.

Исходники документации — в каталоге book/ (синхронизируются с GitBook через Git Sync).

Внутренняя проектная документация (архитектура, ADR, планы) — в каталоге docs/.

Автор

catalyst. Плагины и новости — Telegram-канал @catalystdevplugins.

Лицензия

MIT. См. файл LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

catalib-0.2.0.tar.gz (75.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

catalib-0.2.0-py3-none-any.whl (57.8 kB view details)

Uploaded Python 3

File details

Details for the file catalib-0.2.0.tar.gz.

File metadata

  • Download URL: catalib-0.2.0.tar.gz
  • Upload date:
  • Size: 75.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for catalib-0.2.0.tar.gz
Algorithm Hash digest
SHA256 332f8854170d2f43bc78fa02680da77bb393a71c96f19f50ada0cb7c8e605eea
MD5 87b6646234885b44310f65d383753ecd
BLAKE2b-256 e9c212fc7aa6238a50e05430e59e0d5ef4176dd9e382a3ddf9de7852a343dcbb

See more details on using hashes here.

File details

Details for the file catalib-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: catalib-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 57.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for catalib-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 901c5296697bd37840b9d5e23698521e4c8b06b043920e436b3b64ac7bf9652f
MD5 5199c34bfa2146fa0fca1859c76acbd5
BLAKE2b-256 89752139f824f31a50e05bd6985fa496b3519897f695eefd7de3d835c0b767c2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page