Graph Manufacture

Diagram workshop, no server

Your diagrams are made here, and stay here.

Type Mermaid, PlantUML, Graphviz or SysML v2, or open a draw.io file. The drawing appears as you write, built inside your own browser. Nothing is uploaded, nothing is tracked, no account is needed.

Open the editor

Write Render SVG Export your keyboard runs on your device YOUR TEXT STAYS HERE
Fig. 1 – What happens to your text.
01

Check it yourself

Most online diagram tools send your text to a server to draw it. This one is built so that the page is not allowed to. Three ways to confirm that.

The browser enforces it
The page ships with a Content Security Policy that forbids every outgoing connection. The browser itself refuses to let the page open connections to other servers, so the page has no way to upload your diagram text.
connect-src 'none'
form-action 'none'
Pull the plug
Open the editor, switch off your Wi-Fi and keep drawing. Rendering, editing and exporting all run on your device. Open each format once before going offline, so its renderer is loaded.
Read the code
The code of the page is plain, readable JavaScript: open your browser's developer tools or “view source” and see for yourself. All libraries ship with the page. No fonts, analytics or ads are loaded from other sites.
02

Five formats, one bench

Pick a format, write, and the preview follows every keystroke.

Mermaid

Flowcharts, sequence, class, state and ER diagrams, Gantt charts and more.

flowchart LR
  A[Idea] --> B{Ready?}
  B -->|yes| C[Ship]

PlantUML

The UML classic, rendered locally. No PlantUML server involved.

@startuml
User -> App : text
App --> User : SVG
@enduml

Graphviz / DOT

Describe nodes and edges, Graphviz does the layout.

digraph G {
  Editor -> Renderer;
  Renderer -> SVG;
}

SysML v2

Systems modelling in textual notation: structure, action flows, state machines, use cases and requirements.

part def Vehicle {
  part engine : Engine;
}
part def Car :> Vehicle;

draw.io

Open .drawio files, see them, and convert them to and from the text formats.

<mxCell value="Start"
  style="ellipse;"
  vertex="1">

SysML v2 covers a practical subset of the textual notation: structure, action flows, state machines and use cases. The draw.io preview is simplified: shapes, colours, labels and arrows are drawn, the editing itself stays in draw.io. Planned: tabs.

Mermaid, PlantUML, Graphviz, draw.io and SysML are names of their respective owners. Graph Manufacture is an independent project and is not affiliated with, endorsed by or sponsored by them.

03

Convert, and see what was lost

Change the format in the editor and your diagram is converted on the spot. Formats never match exactly, so nothing is dropped silently: every line that could not be carried over is listed with its line number and the reason. Go straight back and your original text returns unchanged.

PlantUML in

@startuml
skinparam monochrome true
actor User
User -> App : open file
== Phase 2 ==
App --> User : preview
@enduml

Mermaid out

sequenceDiagram
  actor User
  participant App
  User->>App: open file
  Note over User,App: Phase 2
  App-->>User: preview

Not carried over (2)

  • Line 2skinparam monochrome truestyling and layout settings are not converted
  • Line 5== Phase 2 ==separators do not exist in Mermaid; approximated by a note over all participants
What can be converted into what
DiagramMermaid ↔ PlantUMLGraphvizdraw.ioSysML v2
Sequenceboth ways–––
Flowchart, activityboth waysboth waysboth waysboth ways
Classboth waysone wayone wayone way
Stateboth waysone wayone wayboth ways
Entity relationshipboth waysone wayone wayone way
Mind map, WBSboth waysone wayone way–
Ganttboth ways–––
Use case, componentPlantUML → Mermaidone wayone wayboth ways (use case)

“One way” means the result is a graph or a SysML model that you can keep editing, but it cannot be turned back into the original diagram type; switching straight back in the editor restores your original instead. Graphviz and draw.io convert into each other in both directions, and SysML converts to Graphviz and draw.io as a graph. Towards Mermaid and PlantUML a SysML text becomes a class, state, activity or use case diagram, depending on which kind of element it holds most of; the rest is named in the loss list. Flowcharts with decisions or start and end points become SysML action flows. When no direct route exists, the conversion runs in steps and the loss list covers every step. Types without a counterpart (for example Mermaid timelines or pie charts) are refused with an explanation.

Guides: PlantUML to Mermaid · Mermaid to PlantUML · PlantUML to draw.io · Mermaid to draw.io · PlantUML viewer · Mermaid viewer · draw.io viewer

04

What is on the bench

Start drawing

05

Questions

Is my diagram really never uploaded?

Correct. Rendering happens in your browser, and the page's security policy forbids outgoing connections. Your diagram text is kept only in your browser's local storage.

Does the website itself collect anything?

The site is hosted by Cloudflare, which, like any host, sees your IP address when you load a page. There is no analytics, advertising or tracking script. Details are in the privacy policy.

How reliable are the conversions?

They cover the common features of each diagram type and say so when something is left out. Check the preview after converting, and read the list of what was not carried over. Your original is kept, so Undo and switching straight back are always safe. Converted results are provided as is, without any guarantee that they are complete or correct.

Which browsers work?

Current Chrome, Edge, Firefox and Safari. The renderers use WebAssembly, so very old browsers are not supported.

How do I report a bug or ask for a feature?

Use the Feedback link in the editor or on this page. It opens an email to us.