Keyzori
Keyzori es un servidor autoalojado de gestión de licencias para productos de software, construido con Bun y TypeScript. Permite crear clientes, emitir licencias y controlar dispositivos mediante una API HTTP o CLI.
Ficha actualizada 24 sept 2026, 5:01 · upstream 24 sept 2026, 4:46 · release v1.2.1
Qué es Keyzori
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Keyzori funciona como un servidor centralizado para gestionar licencias de software, permitiendo a los desarrolladores mantener el control total sobre sus datos de licencia sin depender de terceros. Soporta múltiples tipos de licencias: lifetime (vitalicia), subscription (suscripción con fechas de caducidad), metered (medición de uso) y trial (prueba temporal). La arquitectura utiliza Bun como runtime, TypeScript para la lógica de negocio, PostgreSQL para persistencia de datos y Redis para caché o colas.
El sistema permite definir límites por dispositivo, IP o sesión activa, así como listas blancas y metadatos personalizados. Incluye integración nativa con Stripe para sincronizar suscripciones existentes sin crear portales de pago ni checkout. La gestión se realiza mediante una API HTTP bien documentada o herramientas de línea de comandos.
Es importante destacar que el proyecto está en proceso de reconstrucción hacia la versión 2, lo que implica cambios en la API y el formato de la base de datos. Las bases de datos antiguas no son compatibles con la nueva versión, por lo que se recomienda iniciar con una instalación limpia.
- Gestionar licencias para software SaaS o aplicaciones de escritorio sin depender de servicios externos como Azure App Service o AWS License Manager.
- Implementar modelos de suscripción recurrentes sincronizando automáticamente con cuentas de Stripe existentes.
- Controlar el acceso a una aplicación interna limitando conexiones por IP o número de dispositivos activos.
- Ofrecer pruebas gratuitas (trial) que caduquen tras un tiempo específico desde la primera activación exitosa.
- Auditar y rastrear el uso de licencias mediante métricas de consumo (metered) para aplicar límites estrictos.
- Desplegar una solución de autenticación de software en infraestructura propia con control total sobre los datos.
- Arquitectura ligera basada en Bun y TypeScript, optimizada para despliegues autoalojados con bajo consumo de recursos.
- Integración nativa con Stripe para sincronización automática de suscripciones sin intervención manual.
- API HTTP robusta y documentación completa que permite integraciones personalizadas o desarrollo de plugins.
- Soporte para múltiples modelos de licenciamiento (lifetime, subscription, metered, trial) en una misma instancia.
- Herramientas CLI incluidas para administración directa sin necesidad de interfaz gráfica compleja.
- Diseñado para ser autocontenido con Docker Compose o despliegues nativos usando Bun directamente.
- La versión actual está en proceso de reconstrucción (v2), por lo que la API y el esquema de base de datos cambiarán próximamente.
- Las bases de datos existentes no son compatibles con la nueva versión; se requiere una instalación limpia para actualizar.
- No incluye interfaz gráfica de usuario, gestionando todo mediante API o CLI.
- La sincronización con Stripe no crea portales de pago ni checkout, requiriendo integración externa para gestión de pagos.
- Las claves de licencia generadas no pueden mostrarse en su totalidad una vez emitidas; deben guardarse externamente.
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Requiere Bun 1.3.14 o superior, PostgreSQL y Redis. Para despliegue rápido, usar Docker Compose con las variables de entorno KEYZORI_ADMIN_KEY (mínimo 32 caracteres) y KEYZORI_POSTGRES_PASSWORD. Asegurar que los servicios de base de datos estén activos antes de iniciar el servidor. En entornos de producción, configurar KEYZORI_HOST para restringir la interfaz de escucha si es necesario. Migrar la base de datos antes de actualizar a nuevas versiones.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.
