PlantUML Viewer - Open and Read .puml Files Online
Sometimes you do not want to write a diagram, you want to read one. Someone has sent you a `.puml` file, or you have found one in a repository, and you need to see what it actually looks like.
Paste it below and it renders immediately. The viewer is built for reading: zoom, pan, fit-to-screen and a fullscreen mode that gets the rest of the page out of the way. As with everything here, the file is rendered on your machine rather than uploaded.
Paste the contents of a .puml file over this sample to view it.
Reading a diagram that does not fit the screen
Architecture diagrams outgrow a browser window quickly. Scroll to pan around the canvas, pinch or hold Ctrl and scroll to zoom, and use fit-to-screen to get the whole thing back in view after you have wandered off.
Fullscreen is the one worth remembering. It hands the entire window to the diagram, which is the difference between squinting at a component diagram and actually reading it. Escape gets you back.
What you can open
Anything the PlantUML engine understands: the full set of UML diagrams, plus mind maps, Gantt charts, work breakdown structures, ER diagrams, network diagrams and JSON or YAML data trees. If it renders with the PlantUML jar, it renders here.
The one exception is diagrams that pull in remote resources. Sprite libraries and icon sets fetched over the network - the !include of a remote URL, for example - will not load, because rendering happens entirely offline. That is a deliberate consequence of nothing leaving your browser, not a bug.
When the diagram will not render
PlantUML does not always fail loudly. A syntax error produces a diagram whose content is the error, which is disorienting if you did not write the file. The editor detects this and shows a clear message instead.
If a file you have been sent will not render, the usual culprits are a missing @enduml at the end, an unclosed alt or note block, or a remote !include that cannot be fetched. The issue checker in the toolbar finds the first two and offers to fix them.
From reading to editing
The viewer is the editor, so the moment you want to change something you already can. Fix the stale service name, re-render, and export a corrected image, or download the amended .puml to open a pull request against the original.
If you want to send the diagram to someone else, the Share button builds a link that carries the compressed source in the URL fragment. Nothing is stored on a server; the recipient's browser decodes and renders it locally, the same way yours did.
Examples
A file with a missing @enduml
A common way a shared .puml arrives broken. The checker flags it and can add the closing line.
Input
@startuml
Alice -> Bob : Hello
Bob --> Alice : Hi
' the @enduml line is missingViewing JSON as a tree
Handy when the file you were sent is data rather than a classic diagram.
Input
@startjson
{
"order": "A-1042",
"status": "paid",
"lines": [
{ "sku": "TSHIRT-M", "qty": 2 },
{ "sku": "MUG", "qty": 1 }
]
}
@endjsonHow to use this plantuml viewer editor
- 1
Paste the source
Open the .puml file in any text editor, copy everything, and paste it over the sample. Rendering starts automatically.
- 2
Navigate the diagram
Scroll to pan, pinch or Ctrl-scroll to zoom, and use fit-to-screen to reframe. Fullscreen gives the diagram the whole window.
- 3
Fix it if it is broken
If nothing renders, check the issue count in the toolbar. Missing delimiters and unclosed blocks can be repaired in one click.
- 4
Export or share
Copy the image, download a PNG or SVG, or create a share link that carries the source in the URL rather than on a server.
Frequently asked questions
How do I open a .puml file?
A .puml file is plain text, so open it in any text editor, copy the contents, and paste it into the viewer on this page. It renders immediately, in your browser.
Do I need to install PlantUML to view a diagram?
No. The official PlantUML engine is compiled to JavaScript and served from this site, so there is no Java or Graphviz install. The first visit downloads the engine, after which it is cached and works offline.
Is the file I paste uploaded anywhere?
No. Rendering happens entirely inside your browser tab. This matters most when someone has sent you a diagram of internal infrastructure - viewing it here does not disclose it to a third party.
Why does a diagram someone sent me not render?
Most often a missing @enduml, an unclosed alt, loop or note block, or a remote !include that cannot be fetched offline. The first two are detected automatically and can be fixed in one click.
Can I view very large diagrams?
Yes. Diagrams are rendered as SVG, so there is no size ceiling on the rendering itself, and the viewer has zoom, pan, fit-to-screen and fullscreen for navigating them. Only PNG export is limited by browser canvas size.