Repository navigation
Releases
UmlCraft 0.21.2
What's new
ER diagrams
- Arranged from left to right: entity, relationship, entity, as usually drawn at school,
with straight lines between them. AI clients can still ask for the layout from top to
bottom ("direction": "down"), and importing SQL keeps it. - Recursive relationships: the two lines between a relationship and the same entity run
apart instead of on top of each other, so each role stays next to its own cardinality. - Routed lines reach the figure: a line routed at right angles ends on the rhombus of a
relationship, the ellipse of an attribute or the triangle of an IS-A instead of short of it.
Sequence diagrams
- Calls drawn further down: a message drawn from a lifeline that was called and has not
answered yet belongs to that call, however far below it lies, and starts no second
activation; a fragment around it leaves the reply outside. - Fragments below messages to self keep below the loop and the activation it starts, and
the text of a long message to self stands beside the activation instead of across it. - Replies to self leave the activation their call started at its full height.
Arranging diagrams
- Names of parallel lines: where two lines run side by side between the same two
elements, such as opposite transitions, each name stands on the outer side of its own line.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-x86_64.AppImage: make it executable and start it (UmlCraft-*-linux-x64.AppImage is the same file under its former name, for updating older versions) |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.21.2 or nix profile install github:udvlp/UmlCraft/v0.21.2, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage brings xkbcommon and needs Vulkan, Wayland or X11 and Fontconfig,
which every graphical desktop has. The.tar.gzneeds xkbcommon too, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
What's Changed
- Bump taiki-e/install-action from 2.89.1 to 2.90.3 in the actions group by @dependabot[bot] in #35
- Bump the cargo group with 3 updates by @dependabot[bot] in #36
Full Changelog: v0.21.1...v0.21.2
UmlCraft 0.21.1
What's new
Arranging diagrams
- Lines beside a generalization tree no longer cross it or run close beside it, and
their ends keep clear of the triangle. Roles and multiplicities of such a line stay at
their own end. - Loops beside other lines: a new loop goes to a corner whose sides other lines leave
free, and its roles and multiplicities stand beside their own ends. - Specialized actors of one actor stand side by side below it, each with its own line.
Sequence diagrams
- Created lifelines follow their message when a combined fragment moves it down, and the
frame no longer reaches over the reply that follows. - Message texts move off the activation bars their line crosses.
AI clients
- Objects can show only the slots that have a value (
empty_slots: false).
Packages
- The AppImage is now named
UmlCraft-0.21.1-x86_64.AppImage. The same file is here as
UmlCraft-0.21.1-linux-x64.AppImagetoo, so that older versions still update.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-x86_64.AppImage: make it executable and start it (UmlCraft-*-linux-x64.AppImage is the same file under its former name, for updating older versions) |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.21.1 or nix profile install github:udvlp/UmlCraft/v0.21.1, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage brings xkbcommon and needs Vulkan, Wayland or X11 and Fontconfig,
which every graphical desktop has. The.tar.gzneeds xkbcommon too, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.21.0...v0.21.1
UmlCraft 0.21.0
What's new
Arranging diagrams
- Use case diagrams as in textbooks: the use cases of a system boundary stand one below
the other, those of one actor next to each other. The actors stand left and right of the
boundary, level with their use cases, a specialized actor below its general one, and their
lines run straight. - From left to right: arranging leaves room for long roles and multiplicities between
the boxes, and puts boxes without lines in one row. - Generalizations drawn separately stay separate instead of being joined into a shared
tree again. - Several loops on one node go to its corners in turn instead of lying on top of each
other.
Class and object diagrams
- Roles keep to their own line: on a loop, the role and multiplicity of each end stay
beside that end. On lines running side by side between the same two boxes, they go to the
outer side. - Objects are as large as they are drawn, so links between them stay straight.
- Use case diagrams no longer offer associations between two actors or two use cases.
Sequence diagrams
- Messages with arguments: typing
name(a, b)takes what is in the parentheses as the
arguments. - Replies moved below the end of their activation make it longer.
- Combined fragments keep clear of the messages above and below them, and a fragment
inside another one stands inset from its edges.
Editing
- No package along with a new diagram: a diagram made at the top of the model goes right
into it. Packages are made on purpose, in the model tree or with the Package tool. - New diagram lists the diagram kinds in alphabetical order of their names.
- Regions stay put when a state with regions grows to the left or upwards.
- Moving a node no longer reroutes the lines of its neighbours to other nodes.
- Refused edits are told entirely in German or English.
AI assistants (MCP)
- More of the model: AI clients now make object diagrams and set the following:
- role, multiplicity, navigability and aggregation of association ends;
abstractandstatic;- the class of an object and the values of its slots;
- message numbers, return values and the frame of sequence diagrams.
- Drawing on purpose:
- replies go where the client says;
- for exercises in finding mistakes, lines UML does not allow can be drawn on request.
- Without the app, texts are measured like Arial, so that arranged diagrams look the same
with and without it. - Safer connections:
- clients stay inside their allowed folders on every system;
--tokenis gone, since other users could read it on the command line, and--connect
takes the token from the app instead.
mcp setupleaves client configurations it cannot read as they are.
Updates and packages
- Updates: the downloaded package is checked once more right before it is started.
- The AppImage brings the xkbcommon libraries along and starts on more systems.
- Structograms nested extremely deeply no longer crash UmlCraft.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.21.0 or nix profile install github:udvlp/UmlCraft/v0.21.0, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage brings xkbcommon and needs Vulkan, Wayland or X11 and Fontconfig,
which every graphical desktop has. The.tar.gzneeds xkbcommon too, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.20.0...v0.21.0
UmlCraft 0.20.0
What's new
State machine diagrams
- Substates stay visible and inside: a state placed in a composite state is drawn in
front of it instead of vanishing behind it. A state dropped into a smaller one, or moved
over its border, makes that state grow around it; arranging the diagram grows every
composite state around its substates. - Moving states: a state dragged into a composite state becomes its substate and its
transitions drop the bends they had from where it was before. - Regions: dividing a small state into regions enlarges it so that each region has room,
and a selected region is outlined on its own. - States grow for their activities, and a transition from a state to itself stays at the
state's corner, its label beside it, when the state grows or moves. - Transition labels typed in place are split into trigger, guard and effect, as
e2 [x > 0] / z++reads; an internal transition opens with its text when double-clicked. - Opposite transitions between two states side by side no longer lie on one line.
- Stereotypes of a state are shown above its name.
Activity diagrams
- Swimlanes can be put in another order: dragged past a neighbor's middle, a lane takes
its place and the lanes close up, each with its contents.
Editing
- Names right after placing: a new class, object or other box opens its name for typing.
- Empty canvas: with no diagram open, the window shows the canvas with its grid.
- Properties no longer show an element of the diagram shown before.
Structograms
- Turned calls and jumps in case elements with many branches keep room for their bars,
so their text no longer runs over them. - Empty
finally: a click into the bottom band of a try selects its emptyfinally, to
paste or insert into it. - Undo selects the element it brought back or changed.
AI assistants
- States: AI clients write entry, do and exit activities and internal transitions, give
transitions their labels in one string, and move states into composite states as a drag
does. - Selection in structograms: AI clients select a structogram's element by its path, and
the properties panel then edits it.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.20.0 or nix profile install github:udvlp/UmlCraft/v0.20.0, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
What's Changed
- Bump the actions group with 2 updates by @dependabot[bot] in #13
- Bump ureq from 3.5.0 to 3.5.1 in the cargo group by @dependabot[bot] in #14
- Bump sha2 from 0.10.9 to 0.11.1 by @dependabot[bot] in #15
Full Changelog: v0.19.0...v0.20.0
UmlCraft 0.19.0
What's new
- Structograms on the diagram canvas: structograms are drawn like the other diagrams,
sharp at every zoom and on the same grid, and open, zoom and scroll without delay even when
large. - Structogram elements in the properties panel: text, comment and whether an element is
disabled, and the structogram's signature, comment and kind, are edited in the properties
panel instead of a dialog, and the drawing follows the typing. A new element goes in at
once, ready for its text; one undo takes back the element together with what was typed. - ER diagrams in IE and IDEF1X notation: besides Chen, an ER diagram can be drawn with
crow's feet (IE) or in IDEF1X, chosen per diagram in the ribbon or the properties;
switching converts the diagram and keeps the entities where they are. Entities are tables
with the primary key above a divider and the other columns below, foreign key columns
marked(FK), with or without types, with logical or physical names, all columns, keys
only or the name alone. Identifying, non-identifying and many-to-many relationships are
drawn from parent to child and copy the parent's key into the child; making a relationship
identifying moves those columns into the child's key. Subtypes have their symbol and a
discriminator. The sample project shows its database in both notations. - ER diagrams as SQL: File › Export › "ER diagram as SQL …" writes
CREATE TABLE
statements for MySQL/MariaDB or PostgreSQL. Relationships become foreign keys,
many-to-many relationships tables of their own, subtypes take their supertype's key. A
dump of one database written for the other gets that one's types. - SQL dumps keep their foreign key columns as columns of the tables, and the import
dialog offers the notation. - Counted columns, virtual columns and referential actions:
AUTO_INCREMENT, identity
andserialcolumns, virtual generated columns and theON DELETE/ON UPDATEof foreign
keys come along from SQL dumps and go back into the SQL; the properties panel sets them on
attributes and relationships. - Domains,
CHECKand indexes: SQL dumps bring along their domains and enumerated
types, conditions on columns and tables and their indexes, the export writes them, and the
properties panel edits them. - ER diagrams in Chen can read cardinalities at the entity, as
(min,max)of how often
each instance takes part, instead of across the relationship (still the default): a switch
in the diagram's properties. Between two entities the diagram only swaps the ends; for
relationships of three or more entities the value at the entity is entered on its own. - Arranging ER diagrams: lines that go around a table keep clear of the other lines
where they can and no longer run on top of each other. - Routing lines: a line leaves and enters a box where it runs straight, not only in the
middle of its side, and lines that meet a box on one side keep apart, so that the roles and
multiplicities at their ends have room; those labels also move around a bend close to the
box instead of onto the line, and keep off arrowheads, diamonds and crosses. Lines keep
clear of a box's line to itself, which stays at the box's corner when the diagram is
arranged, and generalizations share one line only where it runs past no other box. - Abstract classes whose name already says so (
Person {abstract},Person <<abstract>>) no longer show{abstract}a second time below it. - AI clients create ER diagrams in a notation, switch it with
update_element, add
columns withadd_member, setunique,foreign_key,check,auto_increment,
virtual, a table'schecksandindexes, a relationship'son_deleteandon_update
and the discriminator, create domains withcreate_model_element, and get an ER
diagram as SQL withexport_sql.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.19.0 or nix profile install github:udvlp/UmlCraft/v0.19.0, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.18.0...v0.19.0
UmlCraft 0.18.0
What's new
- ER diagrams: a new diagram kind for entity-relationship diagrams in Chen notation, in the
project like the UML diagrams and drawn on the same canvas: entities, weak and associative
entities, attributes (keys, partial keys, derived, multivalued, composite), relationships
(binary, n-ary, identifying, with attributes) and IS-A, with[min,max]on the lines. They
are edited in place, in the properties and from the context menu, arranged automatically,
and exported as SVG and PNG; the sample project has one. - SQL dumps as ER diagrams: File › Import SQL dump as ER diagram … turns a dump of MySQL,
MariaDB or PostgreSQL into a laid-out diagram in the open project: tables become entities,
junction tables relationships, foreign keys relationships with their cardinalities, with all
attributes, keys only or none. - Light or dark as the system: without a theme of its own, UmlCraft follows the system's
appearance and switches along with it. The View tab and the settings choose between System,
Light and Dark. - Messages in UmlCraft's own dialog: errors and questions show in a dialog of UmlCraft's
own on every platform, in its theme. - Association classes, constraints, shared generalizations and robustness icons in class
diagrams: an association class hangs on a dashed line from the middle of its association;
draw one with its tool or turn an association into one from the line's context menu.
Attributes, operations and lines show their constraints ({age > 0}). Generalizations to
one class can share a single triangle (context menu › Shared style); arranging a diagram does
this for class trees. «boundary», «control» and «entity» classes are drawn as their icons. - State invariants, terminations, duration and time constraints in sequence diagrams: a
state invariant shows a condition on a lifeline, a termination ends a lifeline with a cross.
A duration constraint ({d..3*d}) is dragged from one message to another and follows them
when they move; a time constraint ({t..t+3}) goes on a message with one click. - Submachine states, entry and exit points, stub states: a submachine state stands for
another state machine and showsinclude / Machine. Entry and exit points sit on the border
of a state or of the diagram's frame and stay there when it moves or changes size. - More of the activity diagram: send signal, accept event and accept time event actions,
call behavior actions, input and output pins on the border of an action, activity parameter
nodes on the frame, and connectors. Object nodes, pins and parameters have an ordering, an
upper bound, a stream flag, an effect and a control flag; exception pins are marked by a
small triangle. - Composite structure diagrams: the inside of a class or component, with parts, ports on
the border of the class and of typed parts, and connectors between them. The sample project
shows the dock controller of the bike rental this way. - Required interfaces as sockets: an interface shown as a circle can be shown as a socket
instead, the half circle of an interface a class or port requires. - Structograms in the dark theme: the editor draws structograms in the dark colours of the
diagrams; exports and the clipboard keep black on white. Elements with a comment no longer
carry a grey bar; the comments themselves stay. - AI clients:
set_windowsizes the UmlCraft window and moves it out of sight for
screenshots, which now also capture a minimized window;set_viewswitches theme, language
and zoom;selectselects elements;new_documentwithsampleopens the sample project.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.18.0 or nix profile install github:udvlp/UmlCraft/v0.18.0, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
What's Changed
- Theme: light or dark as the system by @samiuens in #8
- ER diagrams (1/3): model, drawing and a viewer window by @gasts in #10
- ER diagrams (3/3): SQL dumps as ER diagrams by @gasts in #12
- ER diagrams (2/3): the editor by @gasts in #11
New Contributors
Full Changelog: v0.17.0...v0.18.0
UmlCraft 0.17.0
What's new
- The diagram fills the window: ribbon, model tree, properties and zoom float over the
diagram as light grey cards, so the diagram uses the whole window. Drag a card's inner edge
to make it wider or narrower. Zoom to fit, 100 % and paste use the part of the diagram the
cards leave free. - A calmer ribbon: larger icons and labels, more room between buttons, short lines
between groups, and the open tab and the selected tool in a pale blue. - Pan with the right button, zoom with two fingers: holding the right button and moving
the mouse pans diagrams and structograms; the context menu opens when the button is
released without moving. Spreading or pinching two fingers on a touchpad zooms. - No status line: notices appear as toasts at the bottom right; opening, importing and
exporting show what is running above the zoom. - New projects start empty: no class diagram of their own, on the Home tab.
- What a class box shows of its members: per box, the properties can hide stereotypes,
the members' visibility, attribute types, initial values, parameters, parameter types,
return types and the stereotypes of attributes and operations, choose which parameter
directions the operations show and which visibilities of attributes and operations the box
shows. - Colored names and lines: the properties panel gives the selected box's name its own font
color and the selected line its own color, or resets them to the default; images and exports
keep them. - Arrange automatically for more diagrams: activity, state machine and use case diagrams
can be arranged too. Activities run top to bottom along their flows, partitions stay columns
with every step in its own, and fork and join bars span what they join. State machines run
left to right along their transitions, composite states hold their substates and each region
is laid out on its own. Use cases go into the system boundary with actors beside it, level
with their use cases. The Arrange button picks the direction that suits the diagram; its menu
still offers both. - "abstract" once: an abstract class that has the stereotype «abstract» of its own no
longer shows{abstract}below its name as well, nor «abstract» twice. - Sequence diagrams keep their shape as they grow: a message drawn below the others from a
lifeline still busy with a call it has not answered continues that call's bar instead of
starting a new one. A fragment put around a message keeps the message's label clear of its
tab, and a new operand makes room below the fragment instead of taking in what follows it. - Project tree with chevrons and icons: as in the Windows Explorer, a chevron in front of an
item shows whether it can be opened; a click on the chevron opens or closes it, a click on its
name only selects it. Every kind of item has an icon of its own. - Structograms on white: the structogram editor is white around the structogram, as around
a diagram. Save for Structorizer moved to Tools › Exchange, next to Import and Export. - AI clients do more: through the MCP server they make several changes as one undo step,
build whole sequence diagrams with fragments, operands and found and lost messages, write,
change and export structograms, and see the whole UmlCraft window (Windows only so far). - NixOS: a Nix flake builds UmlCraft from source, with its launcher, icon and file types:
nix run github:udvlp/UmlCraft.
Earlier changes are in the changelog.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
| NixOS (x64), built from source | no file: nix run github:udvlp/UmlCraft/v0.17.0 or nix profile install github:udvlp/UmlCraft/v0.17.0, or the flake as an input of your NixOS configuration, with its overlays.default and pkgs.umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves. - NixOS: Nix builds UmlCraft from this release's source; a newer release comes with its own
tag, the update button opens its page. It needs a Vulkan driver
(hardware.graphics.enable = true).
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.16.0...v0.17.0
UmlCraft 0.16.0
What's new
- New versions in the title bar: at its first start UmlCraft asks whether it may look for
new versions on GitHub. If you agree, it checks at most once a day, and a new release shows
as a button in the title bar. About UmlCraft can check at any time. What the check sends is
shown in the app and under Privacy. - Updates install themselves: installed with the Windows installer, as an AppImage or as the
macOS app, UmlCraft downloads the new release when you click the update button, checks it
against the release's checksums, asks to save your changes, installs it and starts again.
Other packages open the release page. - New app icon: a provided interface in its socket, the ball-and-socket notation of
components, which also forms a U. - New diagram in the Home tab: the button that creates diagrams is now the first group of
the Home tab. Labels of large ribbon buttons break onto two lines, as in Office. - Sequence diagrams follow their rules while you drag: messages stay between the heads and
the crosses of their lifelines, a destroy message stays below what happens on its lifeline and
takes the cross along, a create message takes the head and the constructor's bar along, and no
activation bar reaches past a cross. Operand lines of an alt and the like move down below the
bars of the operand above, and fragments made smaller keep room for their last operand. - Substates go along: moving a state takes its substates along, and resizing a state puts
it and its substates into the state or region they now lie in. - Aligning follows the diagram: aligned lifelines only move sideways, aligned containers
take what lies inside along, and aligned states go into the state they now lie in.
Earlier changes are in the changelog.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves.
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.15.2...v0.16.0
UmlCraft 0.15.2
What's new
- Found and lost messages: one click on the lifeline draws them, no second click any more.
Dragging the dot at their open end makes them longer or shorter and turns them to the other
side; they keep their length when the lifeline moves. A lost message starts as a reply,
leaving the bar at its end. - See-through fragment tabs: the tab of a loop, alt and the like no longer hides the
lifelines and activation bars below it. - Back from a member: with an attribute or operation selected, a click on the class name
(or elsewhere in the box) selects the class again. - Sample project: all calls in "Rent a bike" are synchronous.
Earlier changes are in the changelog.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves.
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.15.1...v0.15.2
UmlCraft 0.15.1
What's new
- About UmlCraft: the i in the title bar (and File › About UmlCraft) shows the version, the
web site, the source code and the licence. - Handles by click: a click on the arrow handle without dragging waits for a click on the
element to connect to, as the tools do; before, on a lifeline it always offered messages to
itself. - Activation bars that follow the messages: a create message gives the new lifeline a bar
right below its head, where the constructor runs. The bar a synchronous call is sent from
lasts at least until the called bar has ended, whether a reply is drawn or not. A reply moved
down takes the end of its bar along, and moved back up it shortens the bar again. - Fragments on top: combined fragments (loop, alt, …) are drawn over lifelines and
activation bars, and their filled tab keeps the operator and condition readable. - Sample project: no multiplicities at the ends that are not navigable; in "Rent a bike"
the app'sscanlasts until the end of the ride, so the tracking runs inside it.
Earlier changes are in the changelog.
Downloads
| System | File |
|---|---|
| Windows 10/11 (x64) | UmlCraft-*-windows-x64-setup.exe: installs for you alone without administrator rights, or for all users, and opens .ucraft files with UmlCraft |
| Windows 10/11 (x64), without installing | UmlCraft-*-windows-x64.zip: unpack and start umlcraft.exe |
| macOS 11 or later (Apple Silicon and Intel) | UmlCraft-*-macos-universal.dmg: drag UmlCraft into Applications |
| Debian, Ubuntu (x64) | UmlCraft-*-linux-x64.deb: sudo apt install ./UmlCraft-*-linux-x64.deb |
| Fedora, openSUSE (x64) | UmlCraft-*-linux-x64.rpm: sudo dnf install ./UmlCraft-*-linux-x64.rpm or sudo zypper install ./UmlCraft-*-linux-x64.rpm |
| Linux (x64), any distribution | UmlCraft-*-linux-x64.AppImage: make it executable and start it |
| Linux (x64), Flatpak | UmlCraft-*-linux-x64.flatpak: flatpak install --user ./UmlCraft-*-linux-x64.flatpak |
| Linux (x64), Snap | UmlCraft-*-linux-x64.snap: sudo snap install --dangerous ./UmlCraft-*-linux-x64.snap |
| Linux (x64, glibc 2.35 or later) | UmlCraft-*-linux-x64.tar.gz: unpack and start umlcraft |
SHA256SUMS.txt lists the checksums of all files.
The builds are not signed yet:
- Windows: SmartScreen warns about an unknown publisher. Choose More info › Run anyway.
- macOS: Gatekeeper says the app is damaged or from an unidentified developer. After copying
it to Applications, runxattr -dr com.apple.quarantine /Applications/UmlCraft.apponce. - Linux: the
.deband.rpmbring the libraries UmlCraft needs, Flatpak and Snap bring
their own. The AppImage and the.tar.gzneed Vulkan, xkbcommon, Wayland or X11 and
Fontconfig, e.g. on Debian/Ubuntu
sudo apt install libvulkan1 libxkbcommon-x11-0 libwayland-client0 libfontconfig1.
The Snap is not in the Snap Store yet, hence--dangerous; Flatpak and Snap do not update
themselves.
Exporting to Astah projects needs an installed Astah Professional, UML or SysML. On Windows it is
found under Program Files; elsewhere set ASTAH_HOME to its install folder. The Flatpak and the
Snap cannot start Astah from their sandbox; for the export use one of the other Linux packages.
Full Changelog: v0.15.0...v0.15.1