Skip to content

TopoViewer

TopoViewer turns topology.yaml + stylesheet.yaml into interactive, embeddable, schema-validated topology diagrams for infrastructure docs, internal portals, and ops dashboards.

It is a Topology as Code toolkit for teams that want network, infrastructure, service, and other connected-system diagrams to stay close to source data.

Topology here means a diagram or graph made of meaningful objects and relationships: nodes, links, paths, regions, layers, labels, data, and attention rules. TopoViewer keeps those facts in declarative YAML and keeps presentation policy in selector-based stylesheets, then renders both through an embeddable TypeScript/React runtime.

TopoViewer is not a generic Mermaid.js replacement. Mermaid is broad text-to-diagram syntax for many diagram families. TopoViewer is narrower and more semantic: it is built for inspectable, data-driven topology views where layers, regions, paths, operational metadata, focus behavior, and reusable runtime APIs matter.

TopoViewer YAML to rendered network diagram

Start In 60 Seconds

npm install topoviewer @xyflow/react react react-dom
  1. Render the copyable YAML pair in First Topology.
  2. Style it with Style Your First Topology.
  3. Embed it in React or MkDocs.

Choose A Path

Need Start here
Understand the product Why TopoViewer
Author a topology First Topology
Style a topology Style Your First Topology
Explore examples Examples
Embed in a React product React and TypeScript API
Embed in documentation MkDocs or Static HTML / Zensical Adapter
Operate from telemetry Grafana TopoViewer Panel
Reference accepted contracts Object attributes, YAML schemas, compatibility, and stylesheet reference
Evaluate architecture and risk Architecture, threat model, performance and accessibility, and Adopt TopoViewer Or Keep Topology Locked To A Surface
Maintain or release the repo Production Hardening, Design Review Checklist, Release, and Documentation Standard
Debug a broken render Debug Rendering

Integration Surfaces

TopoViewer's first public adoption path is the React package plus documentation embeds. Authoring tools and operational dashboards exist to prove the model, but they are not all part of the same stability promise.

Surface Status Use today
TypeScript/React package Supported Install topoviewer from npm and embed schema-validated topology diagrams in React applications.
MkDocs Supported Publish live YAML examples through mkdocs-topoviewer.
Browser harness Experimental Author, validate, preview, and export TopoViewer YAML while the authoring UX matures.
Grafana panel Experimental Mount topology/style/mapper bundles and render Prometheus-driven overlays.
Zensical Supported Adapter Preview the same docs content through the generated Zensical site.
VS Code extension Experimental Preview TopoViewer YAML locally; automatic full-project authoring is still evolving.
Grafana Containerlab mode Lab Validate realistic telemetry under the Grafana lab; not a separate production surface.
NetBox Roadmap Future in-product topology visualization from NetBox inventory and platform data.
OpsMill/Infrahub Roadmap Future in-product topology visualization from Infrahub network topology and inventory data.

Support Status Labels

Status Meaning
Supported Implemented, documented, CI-gated, and intended for normal use. Compatibility expectations apply.
Supported Adapter Implemented, documented, and CI-gated as an adapter path, not as a native upstream plugin package.
Experimental Implemented enough to try, but API, UX, packaging, or operational behavior may still change.
Lab Disposable local validation environment. Do not treat it as production deployment guidance.
Roadmap Planned or under study. Do not depend on it as shipped behavior.
Maintainer Repository maintenance workflow, not an end-user product surface.

Examples

The feature examples are generated from packages/topoviewer/content/examples. Each example is both documentation and a Playwright-backed test fixture.