Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Pumler Diagrams

pumlerpumler71 downloads

Render PlantUML, Structurizr and Mermaid diagrams from code blocks.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

Render PlantUML, Structurizr DSL, and Mermaid diagrams from pumler fenced code blocks in Obsidian notes.

Pumler for Obsidian sends diagram source to the public Pumler rendering API and inserts the returned SVG into your note. It is useful when a vault needs one renderer for several diagram languages without local PlantUML, Structurizr, or Mermaid services.

The online editor is available at pumler.com.

Features

  • Renders plantuml, structurizr, and mermaid diagrams from one code block format.
  • Supports per-diagram light, dark, or auto themes.
  • Debounces diagram edits before calling the rendering API.
  • Caches the 30 most recently used rendered SVGs on disk.
  • Provides a collapsible summary row and a large zoomable preview modal.

Quick start

Add a pumler fenced code block with a YAML header:

```pumler
---
provider: plantuml
type: sequence
theme: auto
title: Login sequence
---
Alice -> Bob: Hello
Bob --> Alice: Hi
```

The plugin processes pumler fences. It does not replace Obsidian's native mermaid renderer and does not process mermaid, plantuml, or structurizr fences directly.

UI examples

Diagram source code

---
provider: plantuml
type: sequence
---
title Sequence Diagram Example

actor User
participant "Application" as app
database "Database" as db

User -> app: Request user's diagrams
activate app

app -> db ++: Fetch 10 last diagrams
db --> app --: Result
opt db error
    app --> User: 500 Error
end

return List of diagrams

note right of User
    This is a
    multi-line note
end note

Preview

Diagram preview

Zoomed

Zoomed diagram

Settings

Each diagram is configured in the YAML header at the top of the code block.

Setting Required Values Default Description
provider yes plantuml, structurizr, mermaid none Diagram language rendered by Pumler.
type yes Provider-specific type listed below none Diagram type sent to the Pumler API as diagramType.
theme no auto, dark, light auto Per-diagram theme. auto follows the current Obsidian theme and sends dark or light to the API.
title no any string none Local Obsidian label shown when the diagram is collapsed. It is not sent to the Pumler API.

Examples

PlantUML sequence

```pumler
---
provider: plantuml
type: sequence
theme: auto
title: Login sequence
---
actor User
participant "Obsidian note" as Note
participant "Pumler API" as API

User -> Note: Edit diagram
Note -> API: Render request
API --> Note: SVG
```

Mermaid flowchart

```pumler
---
provider: mermaid
type: flowchart
theme: light
title: Rendering flow
---
flowchart LR
  note[Obsidian note] --> api[Pumler API]
  api --> svg[Rendered SVG]
```

Structurizr system context

```pumler
---
provider: structurizr
type: systemContext
theme: dark
title: Knowledge base context
---
workspace {
  model {
    user = person "User"
    system = softwareSystem "Knowledge Base"
    user -> system "Reads and writes notes"
  }

  views {
    systemContext system {
      include *
      autoLayout
    }
  }
}
```

Supported diagram types

PlantUML

sequence, usecase, class, object, activity, component, deployment, state, timing, archimate, mindmap, wbs, json, yaml, er, nwdiag

Structurizr

systemContext, container, component, deployment

Mermaid

flowchart, sequence, class, er, journey, gantt, pie, quadrant, requirement, gitgraph, c4, mindmap, timeline, sankey, xychart, block, packet, kanban, architecture, radar, treemap

API, privacy, and cache

Diagram source is sent to the public Pumler API at https://api.pumler.com/api/diagram/render for rendering. Do not use this plugin for diagram source that must never leave your device.

Rendered SVGs are cached as files in the plugin cache directory. The cache stores up to 30 recently used render results and removes older entries using LRU pruning. Cache keys are derived from the rendering API URL, provider, diagram type, resolved theme, and diagram source, so changing any of those values creates a different cache entry.

Diagram source is not written to cache filenames or the cache index. The cached SVG is the exact rendered response from the Pumler API, so treat it as sensitive as the rendered diagram itself.

Development

npm install
npm run test
npm run build

For local testing, copy main.js, manifest.json, and styles.css into a vault plugin directory such as .obsidian/plugins/pumler/.

83%
HealthExcellent
ReviewCaution
About
Render PlantUML, Structurizr DSL, and Mermaid diagrams from pumler fenced code blocks by sending source to the Pumler API and inserting returned SVGs into your notes. Configure per-diagram light/dark/auto themes, use debounced rendering with on-disk caching of the 30 most recent SVGs, and preview diagrams via a collapsible summary row and a zoomable modal.
VisualizationImages
Details
Current version
1.0.0
Last updated
3 weeks ago
Created
3 weeks ago
Updates
1 release
Downloads
71
Compatible with
Obsidian 1.0.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
pumlerpumler
pumler.com
GitHubpumler
  1. Community
  2. Plugins
  3. Visualization
  4. Pumler Diagrams

Related plugins

Leaflet

Interactive maps inside your notes.

Note Gallery

A masonry gallery that will visualize your notes, similar to Craft note view.

Advanced Canvas

Supercharge your canvas experience. Create presentations, flowcharts and more.

Excalidraw

Visual PKM powerhouse. Create and edit Excalidraw drawings.

Mermaid Tools

Improved Mermaid.js experience: visual toolbar with common elements and more.

Maps

Adds a map layout to bases so you can display notes as an interactive map view.

Image Converter

Convert, compress, resize, annotate, markup, draw, crop, rotate, flip, align, drag-resize, rename with variables, and batch process images: WEBP, JPG, PNG, HEIC, TIF

Image Context Menus

Image context menus (mostly on right click): Copy to clipboard, Open in default app, Show in system explorer, Reveal file in navigation, Open in new tab.

Life Tracker

Capture and visualize the data that matters in your life.

PlantUML

Generate PlantUML diagrams.