Saltar a contenido

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_used y model_used en 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_code para 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: admin y user.
  • 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 prices en 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) y deploy/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.