Skip to content

0.6.0 (2026-08-15)

Major feature release introducing AI-powered diagram type conversion, a freehand whiteboard canvas with a Miro/Excalidraw-inspired interaction model, and migration to pnpm.

✨ Features

  • Diagram Type Conversion (AI-powered): Convert diagrams between Mermaid, PlantUML, D2, and DBML formats using your configured AI provider. Includes a side-by-side preview modal with warnings about potential incompatibilities before applying changes.
  • Freehand/Whiteboard Diagram Type: New "Freehand" diagram type that provides an Excalidraw-like canvas for drawing diagrams with basic shapes (rectangles, diamonds, circles), arrows, lines, text, and freehand paths. Includes a full toolbar with color pickers and stroke width controls.
  • Freehand canvas usability overhaul: The whiteboard interaction model was refined taking the best of Miro and Excalidraw:
  • Undo/redo (Ctrl+Z / Ctrl+Shift+Z / Ctrl+Y) with toolbar buttons and a 100-step history.
  • Inline text editing (no browser prompt) with multi-line support, auto-growing text elements, and shape text always centered.
  • Complete tool shortcuts (V/H/R/D/O/A/L/T/P/E), duplicate (Ctrl+D), arrow-key nudging, and fit-to-content (F).
  • Hand tool and Space+drag panning.
  • Hover highlight and move cursor in select mode.
  • Alignment and distribution tools for multi-selection.
  • Grouping/ungrouping (Ctrl+G / Ctrl+Shift+G) with group-aware click selection.
  • Shape and text rotation with a rotation handle and Shift snapping to 15°; connected arrows follow rotated anchors.
  • Miro-style red alignment guides with snapping while dragging or drawing.
  • Contextual style panel positioned beside the selection.
  • Drag-to-erase eraser, dashed lines, start/end arrowheads, rounded rectangle corners, and text font size controls.

🐛 Fixes

  • The diagram editor now opens with the folders/files sidebar closed — it only appears when clicking the folder icon next to the diagram title.
  • Converted diagrams are automatically re-centered (fit to screen) after accepting a type conversion.

♻️ Refactors

  • Frontend package manager migration: Replaced npm with pnpm for faster installs and better disk efficiency. Updated Dockerfile, docker-compose configurations, and added .npmrc with recommended settings.

🔧 Internal

  • Added build_convert_diagram_prompt and CONVERSION_SYSTEM_PROMPT to the centralized prompts module.
  • Created DiagramConversionService following the existing service pattern with abstract AI client dispatch.
  • Backend POST /api/v1/diagrams/convert endpoint with preview-only semantics (no auto-save).
  • Freehand canvas state stored as JSON in the existing content field — no schema migration needed.