Keygate: управление лицензиями для разработчиков программного обеспечения
Keygate — это платформа для управления лицензиями с открытым исходным кодом, которая позволяет разрабатывать и контролировать лицензирование своего программного обеспечения. Она предназначена для разработчиков, которые хотят избежать дорогих решений вроде Keygen и Cryptlex, предлагая функционал для подписок, пробных версий и учёта использования от одного бинарного файла и одной базы данных.
Этот проект подходит как независимым разработчикам, продающим настольные приложения и инструменты CLI, так и SaaS-компаниям с разными уровнями подписки. Он упрощает управление лицензиями и активированием, позволяя интегрировать свои платежи через Stripe и обеспечивая полный контроль над данными пользователей.
Запуск Keygate происходит на собственном сервере, однако стоит учесть, что проект находится на стадии активной разработки. Лицензирование осуществляется по AGPL v3, что накладывает определённые ограничения на коммерческое использование.
Проект Keygate представляет собой платформу для управления лицензиями программного обеспечения с открытым исходным кодом. Это саморазвёртываемая альтернатива таким сервисам, как Keygen, Cryptlex и LicenseSpring.
Зачем нужен Keygate?
С помощью Keygate ты можешь контролировать, кто может пользоваться твоим программным обеспечением, как они за это платят и какие функции доступны. Коммерческие платформы управления лицензиями обычно требуют оплаты за каждое место и хранят данные клиентов на чужих серверах. Создание собственной системы может занять много времени из-за необходимости реализовывать логику активации, интеграцию с платежными системами и учёт различных сценариев.
Keygate предлагает готовое решение, которое ты разворачиваешь на своей инфраструктуре и подключаешь к своему аккаунту Stripe. Платформа управляется через удобную панель и включает функции активации, напоминаний о продлении и многое другое, позволяя сосредотачиваться на разработке продукта.
Кто может использовать Keygate?
- Индивидуальные разработчики — для продажи настольных приложений или CLI инструментов.
- Компании SaaS — для управления подписками с различными уровнями доступа к функциям.
- Корпоративные поставщики — для использования плавающих лицензий для крупных команд.
- Поставщики API — для строгого контроля за лимитами использования.
Функции Keygate
- Управление лицензиями: Поддержка различных моделей, включая подписки, бессрочные лицензии, пробные версии и плавающие лицензии. Все действия фиксируются для последующего анализа.
- Распределение программного обеспечения: Возможность загрузки подписанных обновлений через различные платформы.
- Учёт использования: Мониторинг использования API, хранилищ и других метрик с автоматическим срабатыванием лимитов.
- Интеграция с платежами: Полная автоматизация через Stripe с поддержкой различных сценариев обработки платежей.
- API для взаимодействия: Программный доступ для администрирования и автоматизации задач через API.
- Административная панель: Централизованное управление продуктами, планами, лицензиями и аналитикой.
Как установить и запустить?
Для установки Keygate рекомендуется использовать Docker:
# 1. Скачай необходимые файлы
curl -O https://raw.githubusercontent.com/tabloy/keygate/main/docker-compose.yml
curl -O https://raw.githubusercontent.com/tabloy/keygate/main/.env.example
cp .env.example .env
# 2. Настрой секреты
# Отредактируй .env: установи JWT_SECRET и LICENSE_SIGNING_KEY (openssl rand -hex 32)
# 3. Запусти
docker compose up -d
Также можно установить из исходников:
git clone https://github.com/tabloy/keygate.git
cd keygate && cp .env.example .env
make build && ./bin/keygate
После запуска открой http://localhost:9000, и проведи настройку через мастер установки.
Ограничения
Keygate распространяется под лицензией AGPL, что означает, что ты можешь изменять, форкать и разворачивать проект на своих серверах, но при этом должен сохранять атрибуцию "Powered by Keygate" и публиковать изменения, если предоставляешь модифицированную версию третьим лицам. Коммерческая лицензия позволяет обойти эти условия.
Хотя Keygate предлагает множество функций, для некоторых специфических потребностей могут потребоваться дополнительные настройки или интеграции, поэтому важно учитывать это при планировании использования.
Открыть на GitHub: tabloy/keygate →
RepoRadar