Nuxtgram

Diagram renderer

Diagrams that live next to the code that describes them.

Nuxtgram turns a dozen lines of text into a clean architecture, sequence, or dependency diagram. The same input always produces the same SVG, so a diagram can sit in a repository and be reviewed like any other file.

Self-hosted build · SVG output · No account required

Deterministic output

Layout is computed from a fixed seed. Re-rendering an unchanged definition produces a byte-identical file, which keeps diffs readable and stops diagrams from churning in version control.

Three diagram families

Boxes-and-arrows for service topology, lifelines for request sequences, and a directed graph mode for dependency and build order. One grammar covers all three.

Plain SVG, nothing else

Output is a standalone SVG with embedded geometry and no external font or script references. It renders the same in a browser, in a pull request, and in a printed document.

Runs where you run

A single static binary with no database and no network calls at render time. Point it at a directory of definitions and it writes a directory of diagrams.

What a definition looks like

A topology diagram is a list of nodes and the edges between them. Labels are optional; anything omitted gets a sensible default.

topology "ingest path"

  edge   -> queue    "batched writes"
  queue  -> worker   x3
  worker -> store
  worker -> metrics  dashed

  group "hot path" { edge queue worker }

That renders to a single SVG roughly 4 KB in size, with the group drawn as a labelled boundary and the x3 annotation collapsed into one node carrying a multiplicity badge.

Current status

Nuxtgram is a small tool maintained for internal documentation work. The grammar is stable for the three families listed above. Sequence diagrams gained activation bars and nested blocks in the most recent revision; the dependency mode still lays out cycles poorly and reports them rather than guessing.

There is no hosted rendering service and no upload endpoint on this host. See the documentation for the grammar and the command-line interface.