0.4.0 (2026-04-29)¶
Integración de Kroki como motor de renderizado server-side, soporte para diagramas D2, mejoras significativas de UX/UI y responsividad completa de la plataforma.
✨ Features¶
- Integración de Kroki: motor de renderizado de diagramas server-side auto-hospedado vía Docker (
yuzutech/kroki). PlantUML ahora se renderiza a través de Kroki en lugar del servidor públicoplantuml.com, manteniendo el contenido de los diagramas privado. - Soporte para diagramas D2: nuevo tipo de diagrama con lenguaje declarativo moderno. Incluye renderizado vía Kroki, resaltado de sintaxis en Monaco Editor, selector de 19 temas (light, dark, special), validación de sintaxis, corrección con IA, y soporte completo en el chat de IA.
- Endpoint público de renderizado:
POST /api/v1/diagrams/renderque acepta código fuente y tipo de diagrama, retorna SVG renderizado. Accesible sin autenticación para diagramas compartidos. - Selector de proyectos en el editor: dropdown con búsqueda para cambiar de proyecto sin salir de la vista de edición.
- Panel de diagramas rediseñado: sidebar flotante con buscador, acciones rápidas, indicador de diagrama activo y jerarquía de carpetas.
- Editor de código estilo IDE: tema oscuro, title bar macOS, pestaña de archivo con indicador de error, barra de estado con info de errores/líneas/tipo.
- Dashboard mejorado: saludo personalizado con nombre del usuario, tarjetas de estadísticas (proyectos, diagramas, última actividad, plan actual).
- Modal de nuevo diagrama rediseñado: layout horizontal con selector de tipo (Mermaid, PlantUML, D2), descripciones traducidas y checkmark visual.
- Panel de descripción redimensionable: handle de resize accesible fuera del contenedor, ancho persistente por diagrama.
🔧 Internal¶
- Servicio Docker de Kroki agregado a las 3 configuraciones de Docker Compose (raíz, local-full, external-mongodb).
KrokiClientcon interfazIKrokiClientsiguiendo SOLID, 26 tipos de diagrama soportados, timeout configurable (30s).KROKI_URLconfigurable vía variable de entorno (defaulthttp://kroki:8000).- Utilidad centralizada
diagramRenderer.tsque enruta Mermaid al cliente y PlantUML/D2 al backend. d2ConfigManager.tspara embed/parse de temas D2 vía bloquevars.- Validador
validate_d2enSyntaxValidatorcon balance de llaves. - Prompts de IA con contexto D2 completo (chat, generación, mejora, corrección).
- Dependencia
plantuml-encodereliminada del frontend.
♻️ Refactors¶
- Responsividad completa: todas las vistas adaptadas para móvil y tablet (editor, dashboard, perfil, vista compartida, navbar).
- Componente
CodeEditorextendido con soporte para lenguaje D2. - Utilidad CSS
.scrollbar-hidepara scroll sin barra visible.
🌐 Translations¶
- Claves i18n para D2: tipo de diagrama, descripción, hint de tema, errores de renderizado.
- Claves i18n para dashboard: saludo, estadísticas.
- Claves i18n para editor: nombre de diagrama, tipo de diagrama, descripciones de Mermaid/PlantUML.
- Textos hardcoded reemplazados por claves
t()en panel de código y sidebar.