DiagramKit
Sign InGet Started

UML Models and Diagrams

Use 14 UML diagram families with a shared workspace model and revisioned views.

UML Models and Diagrams

Create a diagram, choose UML, then choose its family. Add elements from the palette, edit their names and properties in the inspector, and select a relationship kind before connecting elements.

Choose a family

FamilyElements and relationships available in the editor
ClassClasses, interfaces, enumerations, attributes, associations and inheritance
ObjectObject instances, classifiers and links
PackagePackages, dependencies, imports and merges
Use caseActors, use cases, system boundaries, include and extend
ComponentComponents, interfaces, ports, assembly and delegation
Composite structureParts, ports, collaborations and connectors
DeploymentDevices, execution environments, artifacts and communication paths
ActivityActions, decisions, object nodes, partitions, forks and joins
State machineStates, regions, choices, history and transitions
SequenceLifelines, activations, fragments, interaction references and messages
CommunicationLifelines, objects, links and ordered messages
Interaction overviewInteraction references connected by control flow
TimingTiming lifelines, state samples, durations and time constraints
ProfileProfiles, stereotypes, metaclasses, extensions and stereotype applications

Use the OMG UML 2.5.1 reference for the underlying modeling terminology. The available palette and inspector fields define what DiagramKit currently supports.

One model, multiple views

Each workspace has a shared UML model. Elements and relationships have stable IDs; a diagram stores their placements and references those IDs. Reuse an existing element from the model rather than creating another copy of the same concept. Renaming a shared element affects every diagram that references it. Removing a placement does not delete the model element.

Sequence and timing views use explicit order and timing properties for their projections. Set message order, lifeline order, state samples and relevant constraints in the inspector. Moving a shape alone does not replace that model information.

Collaborate and keep revisions

A save carries both the diagram revision and the shared model revision. The API commits the model and view together, checks referencing diagrams and records version snapshots. Workspace members receive updates when saved content changes.

If another person saves first, the editor shows a conflict instead of overwriting their changes. Export your local work before reloading, compare it with the current model, and save the intended changes against the new revision. A historical UML version includes its model snapshot and diagram metadata; review effects on other shared views before restoring model changes.

Import and export

The JSON ↓ action downloads a DiagramKit bundle containing the diagram and shared model. JSON ↑ accepts the same UML family and checks stable ID collisions before merging; save to commit the import. Keep the model with the diagram when making backups.

For visual exports of a saved diagram, use the authenticated endpoint GET /api/flows/{id}/render?format=svg, or select png or pdf. The renderer reads the saved diagram and model from one committed snapshot. MCP clients can call the same export operation. These images are for viewing and sharing; use DiagramKit JSON to retain editable model information.

UML execution, code generation, XMI interchange and OCL evaluation are outside the current editor's scope.