← Volver a proyectos

KeyGen — Sistema Distribuido de Gestión de Licencias

Backend / Systems Engineer

Sistema distribuido para generación, validación y gestión de licencias de software con múltiples interfaces cliente (REST API, Discord Bot, CLI).

Stack:
Node.js (TypeScript)PythonMongoDBDockerDocker Compose
Ver en GitHub →

Problema

Necesidad de un sistema escalable para generar y validar licencias de software con múltiples puntos de acceso.

Solución

Sistema distribuido con arquitectura API-céntrica donde los clientes son ligeros y la lógica está centralizada.

Arquitectura

  • Discord Bot → REST API → MongoDB
  • CLI Tool → REST API → MongoDB
  • REST API: Lógica de negocio central, generación de licencias, validación, manejo de expiración, binding HWID
  • Discord Bot: Interfaz basada en comandos delegando lógica a la API
  • CLI Tool: Contenedor efímero orientado a desarrolladores
  • MongoDB: Almacenamiento persistente
  • Docker Compose: Orquesta todos los servicios, entornos reproducibles

Destacados

  • Arquitectura API-céntrica: clientes ligeros, lógica centralizada
  • Microservicios containerizados para aislamiento y reproducibilidad
  • Validación de licencias con binding a HWID
  • Claves de por vida y limitadas por tiempo
  • Interfaz admin legacy vía Mongo Express para visibilidad de base de datos