PlantUML PluginEdit and preview PlantUML diagrams in Visual Studio Code: code, split (code + diagram), or diagram only in one tab, with live SVG preview and export to PNG or SVG. Diagrams are rendered by the PlantUML server URL you configure.
Sample diagram source: If the image does not show in Markdown Preview, enable Settings → Markdown › Preview: Allow Unsafe Local Images ( Tests: Features
Getting started
SettingsOpen Settings and search
|
| Value | Role |
|---|---|
none |
No automatic pipeline; server output + your diagramPreamble only. |
modern-dark (default) |
Extension visual pipeline: light, modern palette (historical id — not a dark UI). Stereotype accents, spacing, soft shadows on dense diagrams. |
glass |
Cool frosted palette with indigo accents; softer hover. |
minimal |
Thin strokes, very light shadows. |
Default pipeline example (same as omitting visualTheme):
"plantumlViewer.visualTheme": "modern-dark",
"plantumlViewer.visualSemanticColors": true,
"plantumlViewer.visualSvgEnhancements": true
Raw server output only:
"plantumlViewer.visualTheme": "none"
PlantUML !theme in the diagram (server)
Only names supported by your PlantUML server work in the .puml file — see plantuml.com/theme. Examples (availability depends on server version): plain, cerulean-outline, cerulean, aws-orange, superhero, materia, metal, lightgray, cyborg-outline, …
!theme plain is a neutral baseline; with default extension settings, the extension can still add skinparams and SVG polish on top (unless layout skinparams in your file take over — see docs/visual-rendering.md).
Do not use modern-dark, glass, minimal, or none after !theme in the diagram. Those are not server theme names — the server may return HTTP 400 (“Cannot load theme …”). They are only valid for plantumlViewer.visualTheme in Settings.
With !theme plain, the extension can inject a style block after that line in the text sent to the server. diagramPreamble in Settings is still prepended before the whole file.
Default diagram font is DejaVu Sans (typical on Linux/Docker servers). Line-crossing “jumps” are not supported by PlantUML/Graphviz — see docs/visual-rendering.md.
Install from a local .vsix
After npm run vscode:package at the repository root, install the generated file (the filename follows version in package.json; example for the current release: plantuml-plugin-manorfm-0.11.14.vsix):
code --install-extension plantuml-plugin-manorfm-0.11.14.vsix
You can also use Extensions → ⋯ → Install from VSIX….
Privacy
Diagram source is sent to the server URL you configure. Use a local or private server for sensitive content.
License
MIT — see the repository.
Issues & source: GitHub