DiagView
Demo Hub DiagView
GitHub ↗
Now Available

DiagView

Transform any static SVG into a fully interactive diagram viewer.
Zoom · Pan · Search · Export · Fullscreen. Framework-agnostic.

DiagView interactive diagram viewer in action
+ Zoom in - Zoom out arrows Pan Space / 0 Reset F Search M Meeting R Rotate Esc Close

Flexible Layouts

Choose the mode that best fits your user experience.

Header Layout

Classic top-bar controls. Best for documentation and dashboards.

View Live Example →
AUTH SERVICE LOGIN

Floating Layout

Clean HUD-style buttons that appear on hover. Ideal for minimal UIs.

View Live Example →
100%

Off Layout

Invisible UI. The diagram itself is a trigger. Best for embedding.

View Live Example →
ROOT Click On Image

Layout Compare

All 3 layout modes side-by-side using per-diagram data-diagview-layout overrides on one page.

Compare Layouts →
floating header off FAB Toolbar Click-only Per-diagram overrides data-diagview-layout=""

Performance Test

2,500 interactive nodes. Testing hardware-accelerated zoom/pan scale.

Run Stress Test →
2.5k NODES

Silent Watermarks 🆕

Add non-intrusive branding to your exported images. Invisible in UI, present on download.

Try Silent Branding →
BRANDED EXPORT Invisible in browser

Built for Performance

Everything you need to handle large-scale documentation infrastructure.

🚀

Lightning Fast

Hardware-accelerated rendering makes zooming through 5,000+ nodes feel like butter.

🎯

Deep Search

Built-in node searching with dirty-checking and throttled background processing.

📸

High-Res Export

Save diagrams as sharp SVG, PNG, or PDF. Perfect for reports and presentations.

🎨

Brand Aware

Automatically syncs with your system's light/dark mode and supports custom accent colors.

Quick Start

Get up and running in seconds.

<!-- 1. Required Dependencies -->
<script src="https://cdn.jsdelivr.net/npm/@panzoom/panzoom@4.5.1/dist/panzoom.min.js"></script>

<!-- Option A: Basic Usage (Auto-initializes) -->
<script src="https://unpkg.com/diagview@1.0.6/dist/diagview.umd.js"></script>

<!-- Option B: Custom Configuration -->
<script src="https://unpkg.com/diagview@1.0.6/dist/diagview.umd.js" data-diagview-no-auto-init></script>
<script>
  DiagView.init({
    layout: 'floating',
    accentColor: '#3b82f6'
  });
</script>