ERPDesk

Changelog

Full release notes for ERPDesk — the UML designer for Windows with multi-dialect SQL generation and round-trip XMI.

Version 1.0

Latest 2026

First public release. A complete UML designer covering ER, class, process, and sequence diagrams — with multi-dialect SQL generation, SQL reverse engineering, multi-diagram projects, XMI 2.1 round-trip, and PNG / SVG / PDF export.

Recent fixes

  • Unsaved-template lost on File → New / Open / Close. The save-prompt now fires whenever the project has any content and hasn't been saved to a file yet, so a never-saved diagram can't disappear silently.

Interchange — XMI 2.1 / UML 2.x Export & Import

  • XMI export writes the project as OMG-standard XMI 2.1 + UML 2.x so other UML tools (Visual Paradigm, Enterprise Architect, StarUML, Modelio, MagicDraw, ArgoUML) can read it. Each diagram becomes a UML package; nodes become Class / Interface / Enumeration with ER shapes carrying a «Table» / «Entity» stereotype; connections become Associations or Generalizations. Reachable via File → Export → As XMI (UML 2.x)….
  • XMI import reads XMI 2.1 documents from ERPDesk or other tools. Tolerant of small dialect differences (matches element names by local-name).
  • Lossless ERPDesk round-trip: an extension block carries layout (x / y / width / height), colours, ER shape kinds, full column metadata (length / scale / PK / FK / nullable / unique / autoinc / default) and connection style. Other tools ignore the extension but still see a valid UML model.
  • Auto-layout on foreign imports: when the ERPDesk extension is absent (the file came from another tool), the importer arranges every imported diagram automatically.

Branding — Icons, Splash, About

  • App icon, Store assets & splash images produced from a single source — multi-size icon (16–256), all MSIX tile sizes, splash images at scales 100 / 125 / 150 / 200 / 400, an About logo, and a Store banner.
  • Splash window: borderless logo splash shown briefly at startup, with the live version number, then hands off to the welcome screen.
  • About box: square logo, product name, version + build number, clickable backendside.com hyperlink, Copy-version button. Reachable via Help → About ERPDesk….
  • Auto-incrementing build number: every build bumps the Build component of the version stamped into the executable and surfaced in the About box.

Auto-Layout

  • Auto-layout: a layered (Sugiyama-style) arrange that places nodes into columns by their distance along connections and stacks them within each column. Guaranteed overlap-free, cycle-safe, and deterministic. Exposed as View → Auto-layout diagram and an ⊞ Arrange toolbar button (one undoable step). Applied automatically to SQL imports.

SQL Reverse Engineering

  • DDL import: parses CREATE TABLE / ALTER TABLE scripts into table nodes with structured columns, primary keys, and foreign keys, then lays them out on a new diagram and draws FK connection lines. Lenient cross-dialect parser — handles quoted / bracketed / back-ticked and schema-qualified names, inline + table-level + ALTER ADD FKs, SERIAL / AUTO_INCREMENT / IDENTITY, DEFAULT, comments; skips what it can't model and reports notes. Round-trips with the generator (verified across all four dialects).
  • Import UI: paste a script or load a .sql file; reachable via File → Import SQL…. Imports onto a new “Imported SQL” diagram as one undoable step.

SQL / DDL Generation

  • The namesake feature: design tables visually, generate real SQL.
  • Table shape (ER category): a physical database table with structured columns (name, type, length / scale, PK, FK → table.column, nullable, unique, auto-increment, default).
  • Columns editor: a grid to add / edit / remove columns, opened from the Properties panel when a Table is selected.
  • Multi-dialect DDL generatorPostgreSQL, MySQL, SQL Server, SQLite — correct per-dialect identifier quoting, type mapping, and auto-increment (SERIAL / AUTO_INCREMENT / IDENTITY(1,1) / INTEGER PRIMARY KEY AUTOINCREMENT). Emits all CREATE TABLEs then ALTER TABLE … ADD FOREIGN KEYs (order-independent), plus -- WARNING: comments for no-PK tables, dangling / blank FKs, and duplicate table names.
  • Generate-SQL dialog: live dialect switch, syntax-styled preview, copy-to-clipboard, and save .sql. Reachable via File → Export → As SQL (DDL).
  • “SQL Schema” starter template: two linked tables ready to export.

Multi-Diagram Projects

  • One project holds many diagrams — an ER diagram, a class diagram, and a flowchart all in one place.
  • Diagram tab strip above the canvas (switch / add / close).
  • Model Explorer: a project → diagrams → elements tree; double-click to open a diagram or jump to an element.
  • File format v2: legacy single-diagram files auto-migrate into a one-diagram project on load (no data loss).
  • Unsaved-changes guard: New / Open / window-close prompt Save / Don't Save / Cancel; the title bar shows a * marker.

UX Polish

  • Welcome screen: New diagram, 5-template gallery, and a recent-files list. Shown at startup before the editor.
  • 5 starter templates: Blank, Basic ER, Basic Class Diagram, Basic Flowchart, Basic Sequence.
  • Dark / light mode: toggle in View menu, persisted. Chrome follows the theme; the canvas keeps the document's own “paper” background.
  • Keyboard cheat sheet (press ?).
  • Status bar shows element / selection counts, live cursor coordinates, and a zoom indicator; View menu has Fit-to-screen and Reset-zoom.

File & Export

  • File service: .umlproj save / load, re-resolving connection endpoints on load.
  • Auto-save every 2 minutes to a recovery file.
  • Export: PNG and PDF (2× raster; single-page PDF embedding a JPEG), and vector SVG generated from the model. Export selection only (PNG) and Copy as image to the clipboard.
  • File menu (New / Open / Save / Save As + Export submenu) with Ctrl+N / O / S; recent files tracked in settings.

Toolbox

  • Toolbox (left sidebar): tabs per diagram type (ER / Class / Process / Sequence), a search box (flat filtered results), and a “Recently used” section.
  • Shape tiles support click-to-add (drops at viewport centre) and drag-and-drop onto the canvas.
  • Category filters, search, recents (max 6).

Properties Panel

  • Properties (right sidebar): context-sensitive, no modal dialogs.
  • Node: name, italic / abstract, stereotype, fill & border colour (swatches + hex), border style, border thickness, font size.
  • Connection: label, routing, line colour, line style, start / end arrowheads.
  • Canvas: grid size, snap toggle, background colour.
  • Connection selection via click hit-testing.

UML Shape Libraries

  • Shape model: editable class members, stereotype, abstract flag, attributes and operations collections.
  • Shape catalog: all shape kinds, categories (ER / Class / Process / Sequence), per-kind default sizes, and a factory with sensible starting content.
  • Vector renderer for ER (entity, weak entity, attribute, multivalued, derived, relationship, weak relationship), Process (start / end events, task, gateway, data object, data-store cylinder), Sequence (lifeline, activation, combined-fragment), plus generic.
  • Class node view: Class / Abstract (italic) / Interface («interface») / Enum («enum») with inline-editable attribute & operation compartments — double-click to edit, Enter for a new row, + attribute / operation affordances.

Canvas Engine

  • Data models: observable nodes, connections, documents; enums for routing, arrowheads, and stroke styles.
  • Undo / redo: bounded stack (capacity 100) with add / remove, move, and resize edits; re-entrancy guard so applying an undo never records a new edit.
  • Diagram view model: selection, snap-to-grid, clipboard copy / paste with id remapping + cascading paste offset; all mutations routed through history.
  • Rendering: infinite grid in screen space (crisp 1px at any zoom), connections with straight / orthogonal / curved routing, 5 arrowheads, dash styles, and midpoint labels.
  • Interaction: Ctrl+wheel zoom-to-cursor, middle-drag pan, rubber-band multi-select, move + 8-handle resize, interactive connect-drag, double-click-to-add-node, fit-to-screen and reset-zoom.
  • Shell: toolbar (add / connect / undo / redo / copy / paste / delete / snap / fit / zoom), status bar (node / connection / selection counts + live cursor coordinates), zoom indicator, and Ctrl+Z / Y / C / V + Delete shortcuts.

Roadmap

  • Shared model elements / views — the same element appears across multiple diagrams and stays in sync.
  • Class ↔ ERD transform + EF Core / JPA code generation.
  • Live database introspection (read straight from a connected database).
  • New diagram types: Use Case → Activity → State Machine → Component / Deployment.
  • Editor polish: waypoint routing, doc export.

Versions

Documentation

User Guide →