Version 1.0
Latest 2026First 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 TABLEscripts 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 ADDFKs,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
.sqlfile; 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 generator — PostgreSQL, 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 allCREATE TABLEs thenALTER 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:
.umlprojsave / 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.