0.1.0 (2026-04-16)¶
Primer release funcional de DiagramaHub. Incluye todas las funcionalidades base de la plataforma.
✨ Features¶
- Editor de diagramas con Monaco Editor (syntax highlighting y autocompletado).
- Soporte para Mermaid y PlantUML con renderizado en tiempo real.
- Validación de sintaxis integrada.
- Exportación a PNG, PDF y Markdown.
- Configuración visual por diagrama: temas, layout engines, estilos y curvas (Mermaid); temas y skinparam (PlantUML).
- Fondo configurable: color y patrón (plain, dots, grid).
- Persistencia del estado del viewport (zoom, posición x/y) por diagrama.
- Modo presentación a pantalla completa con anotaciones.
- CRUD completo de proyectos.
- CRUD completo de carpetas dentro de proyectos.
- Navegación jerárquica: proyectos → carpetas → diagramas.
- Modelo BYOL (Bring Your Own LLM): el usuario configura sus propias API keys.
- Proveedores IA soportados: Google Gemini, OpenAI GPT, Anthropic Claude, DeepSeek.
- Generación de diagramas a partir de descripción en lenguaje natural.
- Mejora de diagramas existentes con sugerencias de IA y vista previa de diff.
- Corrección automática de errores de sintaxis con explicación y diff.
- Generación automática de descripciones para diagramas.
- Endpoint de prueba para validar API keys antes de guardarlas.
- API keys almacenadas cifradas en base de datos y devueltas enmascaradas en respuestas.
- Preferencias de proveedor/modelo configurables por diagrama.
- Tracking de
generation_time,provider_usedymodel_useden cada operación. - Sesiones de chat iterativas para refinar diagramas paso a paso.
- Historial de prompts completo, buscable y reutilizable.
- Enlaces compartidos con token único.
- Dos tipos de acceso para enlaces: público y protegido (código de acceso de 4–20 caracteres).
- Opciones de expiración para enlaces: 5, 10, 30 días o ilimitado.
- Flag
allow_copy_codepara controlar si el visitante puede copiar el código fuente. - Rate limiting y registro de accesos con IPs hasheadas.
- Registro de usuarios con validación de contraseña (mínimo 8 caracteres, mayúscula, minúscula, dígito).
- Login con JWT (tokens configurables).
- Flujo de reset de contraseña con tokens de un solo uso (1 hora de expiración).
- Cambio de contraseña autenticado.
- Eliminación de cuenta con frase de confirmación.
- Dos roles:
adminyuser. - Sistema de planes con límites de recursos (
max_projects,max_diagrams;-1= ilimitado). - Plan gratuito (
FREE) incluido. - Integración con Stripe: checkout sessions, webhooks idempotentes, portal de facturación.
- Soporte multi-moneda vía diccionario
pricesen planes. - Historial de facturación con enlaces a PDF e invoices de Stripe.
- Patrón de gateway agnóstico de proveedor de pago (Conekta como placeholder).
- Multi-idioma: español (por defecto) e inglés, con i18next.
- Gestión de perfil: timezone, idioma, avatar, configuración de seguridad.
- Wizard de instalación inicial (setup) y onboarding para nuevos usuarios.
- Panel de administración para configuración de vendors de email (Resend).
📝 Docs¶
- Documentación con MkDocs Material (español e inglés).
- Guía de instalación detallada.
- Guía rápida de configuración de Stripe.
🔧 Internal¶
- Despliegue completo vía Docker Compose.
- Dos modos de despliegue:
deploy/local-full/(incluye MongoDB 8) ydeploy/external-mongodb/. - Instalador automático de una línea (
install.sh). - Hot reload en desarrollo: backend (uvicorn
--reload), frontend (Vite HMR). - Scripts de verificación post-instalación y pruebas de API.
- Backend: Python 3.11+, FastAPI, MongoDB (Beanie ODM), Pydantic v2, Poetry.
- Frontend: React 19, TypeScript, Vite 7, TailwindCSS v3, React Router v7.
- Testing: pytest, pytest-asyncio, pytest-cov, Hypothesis, Faker.
- Calidad: Ruff, Black, mypy, ESLint.
- Licencia Apache 2.0.