Developer Tools · Amplifier Toolkit

See Your
Architecture

dotviewer turns complex DOT graphs into explorable, zoomable, interactive maps. Stop squinting at flat PNGs — drag, search, and discover your system's structure.

Single HTML · Zero Install
May 2026 · ramparte/amplifier-toolkit
The Problem

DOT graphs
deserve better

🔍

Squinting at PNGs

Static renders of complex graphs are unreadable. Dozens of nodes and edges blur into an indistinguishable tangle at any zoom level.

⚙️

Tool Installation

Graphviz desktop apps, VS Code extensions, online services requiring uploads — every option adds friction before you can see your graph.

🚫

No Interaction

Traditional viewers are read-only. You can't hover to see connections, drag nodes to untangle clusters, or search for what matters.

Architecture diagrams generated as DOT are only useful if people can actually explore them. A 200-node graph rendered to PNG is a poster, not a tool.

The Solution

One HTML file.
Open and explore.

dotviewer is a fully self-contained, browser-based DOT graph viewer. No install, no server, no uploads — just open the file and drag in your .dot.

1

Open dotviewer.html

A single 1,679-line HTML file. Double-click it or serve it locally — everything is self-contained with two CDN dependencies.

2

Drop a .dot file

Drag and drop any .dot or .gv file onto the canvas, or use the "Open .dot" button. Viz.js renders it client-side — no server round-trip.

3

Explore interactively

Pan, zoom, hover, click, drag, search, collapse clusters, follow edges. The graph becomes a living, navigable map of your system.

Core Features

Everything you need in the browser

Pan & Zoom

Smooth viewport navigation powered by svg-pan-zoom. Mouse wheel to zoom, drag the background to pan. Keyboard shortcuts: Home to fit, +/- to zoom.

6 Color Schemes

Switch between Dark, Light, Midnight, Solarized Dark, Blueprint, and High Contrast. Your preference persists across sessions via localStorage.

Dark
Light
Mid
Sol
Blue
Hi-C

Layout Toggle

Re-render the graph in any of four directions: Top-to-Bottom, Left-to-Right, Bottom-to-Top, or Right-to-Left. Viz.js re-layouts on demand.

Live Search

Type in the search bar to highlight matching nodes and dim everything else. Instant visual filter for finding what you need in large graphs.

Interactive Exploration

Every element is a doorway

hover → node

Highlight Neighbors

Hovering a node dims unrelated elements and lights up directly connected nodes and edges. The info panel previews incoming/outgoing connections.

click → node

Focus Mode

Click to lock selection. Everything except the chosen node, its edges, and neighbors fades to near-invisible. The node glows with a drop-shadow highlight.

drag → node

Move Freely

Drag any node to reposition it. Connected edges dynamically redraw as straight lines from center-to-center, keeping the graph readable.

click → edge

Follow the Arrow

Click an edge to pan the viewport to the target node and select it. Walk dependency chains by clicking edge after edge — a navigation tool, not just a decoration.

click → node

Info Panel

A slide-out panel displays the node's label, internal ID, parent cluster, and full lists of incoming and outgoing connections with arrow notation.

Esc

Clear Everything

Press Escape to dismiss focus mode, clear search, close the info panel, and restore full graph visibility in one keystroke.

Cluster Intelligence

Tame the
complexity

Clusters (subgraphs) are first-class interactive citizens, not just background rectangles.

💡

Cluster Spotlight

Click a cluster's background to spotlight its contents — member nodes stay bright, everything outside dims. Boundary-crossing edges show at reduced opacity.

Cluster Drag

Drag a cluster background to move the entire group — all contained nodes, nested child clusters, and labels move together. Membership detected via bounding-box containment.

🗜️

Double-Click Collapse

Double-click a cluster to collapse it into a compact representation, hiding internal nodes. Double-click again to expand. Manage visual complexity on the fly.

Cluster membership uses bounding-box containment rather than DOM hierarchy — a rewrite that fixed broken detection when SVG groups don't nest the way you'd expect.

— commit 0c85cf2, April 1 2026
Development Velocity

Built in a weekend

7
Commits
2
Days (Mar 31 – Apr 1)
1,679
Lines of HTML/CSS/JS
1
File — fully self-contained
31 Mar

Foundation & Interactive Features

Initial viewer with pan/zoom and color schemes (f672668). Same day: hover highlighting, progressive reveal, node dragging, search, layout toggle, info panel (e193236). Then: edge-click-to-zoom, cluster spotlight, enhanced node focus (8d29c7a). Plus: hover info panel, wider edge hit areas, sticky drag, cluster drag (dac4563).

1 Apr

Polish & Cluster Refinement

Double-click collapse, cluster drag moves contents, help dropdown (d908149). Cluster membership rewritten to use bbox containment (0c85cf2). Child cluster groups now move correctly when dragging parent clusters (df9d8c3).

Under the Hood

Two libraries, zero backend

Tech Stack

  • Viz.js 3.11.0 — Graphviz compiled to WebAssembly, renders DOT to SVG client-side
  • svg-pan-zoom 3.6.1 — smooth pan and zoom for SVG elements
  • Vanilla JS — no framework, no bundler, no build step
  • CSS transitions — all dimming, glowing, and highlighting via CSS classes
  • localStorage — persists color scheme preference

Keyboard Shortcuts

Home / 0 Fit graph to viewport + / - Zoom in / out Escape Clear selection & search Hover node Preview info + highlight neighbors Click node Focus mode (dims all else) Drag node Reposition (edges redraw) Click edge Pan to & select target node Dbl-click Collapse / expand cluster

Edge click targets use invisible 20px-wide stroke paths for easy clicking — you don't need pixel-perfect aim to follow a dependency chain.

The Bigger Picture

Part of the
Toolkit

dotviewer lives in amplifier-toolkit alongside reusable bundles, recipes, scripts, skills, and tools for the Amplifier ecosystem.

📦

Bundles

Deliberate Development, Looper, M365 Collab, Session Discovery

📜

Recipes

Feature workflows, session digests

🔧

Tools

Voice Bridge, M365 Collab CLI

📊

dotviewer

Interactive graph explorer — visualize what agents build

For Amplifier Users

The Amplifier platform generates DOT graphs for architecture diagrams, bundle documentation, and dependency maps. dotviewer makes those artifacts explorable instead of static.

For Anyone with DOT Files

dotviewer works with any valid DOT file — CI/CD pipelines, database schemas, state machines, org charts. If Graphviz can render it, dotviewer can make it interactive.

Sources & Methodology

How this deck was built

Primary Source

Data Points (all verified from source)

Methodology

Contributor: Sam Schillace · Deck generated: May 2026

More Amplifier Stories