Skip to main content

Draw UML diagrams in the browser.

An open-source UML modeling editor. 13 diagram types, SVG/PNG/PDF/PPTX/JSON export, real-time collaboration. Use it on the web, on iPhone and iPad, in VS Code, or as an npm library.

npm install @tumaet/apollon

Open source (MIT), built at the Technical University of Munich — the Angular editor in Artemis runs on @tumaet/apollon.

Try it live

The @tumaet/apollon package running in your browser. The snippet beside it is the code that mounts it — switch frameworks in the tabs.

Diagram.tsx
import { Apollon } from "@tumaet/apollon"
import type { UMLModel } from "@tumaet/apollon"
import "@tumaet/apollon/style.css"

export function Diagram({ initialModel }: { initialModel?: UMLModel }) {
return (
<Apollon
style={{ height: 600 }}
defaultModel={initialModel}
onMount={(editor) => {
const id = editor.subscribeToModelChange((model) => {
localStorage.setItem("diagram", JSON.stringify(model))
})
return () => editor.unsubscribe(id)
}}
/>
)
}
LIVE@tumaet/apollon
Loading Apollon…

Edits stay local — refresh to reset.

What you get

Modeling

13 diagram types

Class, Object, Activity, Use Case, Communication, Component, Deployment, Petri Net, Reachability Graph, Syntax Tree, Flowchart, BPMN, and SFC.

Output

Export anywhere

SVG, PNG, PDF, and JSON — from a mounted editor or a headless model; the web app adds PPTX slides. Round-trips through JSON without loss.

Collaboration

Real-time, opt-in

Multi-user editing via Yjs over any transport you already run — WebSocket, WebRTC, or BroadcastChannel.