# bradleyjkemp/memviz

Visualize your Go data structures using graphviz

Repository: https://github.com/bradleyjkemp/memviz
Canonical: https://ross.abutalabs.com/products/memviz
Language: Go
License: MIT
License Family: permissive
Topics: golang, go, visualization, graphviz
Last push: 2021-04-29T20:23:51+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 3211, "days_push": 1952, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1291, forks 51 (observed 2026-08-28T04:04:15.683408+00:00)

## What it is
A Go library that takes a pointer to an arbitrary data structure and generates a Graphviz DOT file, producing a visual graph diagram of the structure's memory layout and relationships. It serves as a debugging aid, offering a clearer alternative to pretty-printing complex nested or linked data structures.

## Use cases
- visualize linked lists, trees, and graphs in Go for debugging
- understand complex nested struct relationships at a glance
- generate DOT diagrams from Go data structures
- debug pointer-heavy data structures that are hard to read when printed
- teach or document how a Go data structure is laid out in memory

## When to choose
- You are debugging intricate Go data structures like linked lists, trees, or graphs
- Pretty-printed output is too hard to follow for nested or pointer-heavy structures
- You want a quick visual diagram without writing custom visualization code
- You already have Graphviz installed and want a simple library call to generate diagrams

## When to avoid
- You need a general-purpose Go profiler or memory analyzer rather than a structure visualizer
- Your project does not use Go
- You cannot or do not want to install Graphviz to render the output
- You need a maintained tool with recent updates and active support

## Facets
- artifact type: library
- maturity: maintenance
- function: data-visualization, developer-tools
- domain: developer-tools, data-visualization
- platform: go, cli, cross-platform
- tags: go, graphviz, data-structures, visualization, debugging, dot-language, memory-layout

## Member repositories
- bradleyjkemp/memviz (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:15.683408+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:54:46.552337+00:00, confidence not recorded.
  - readme: https://github.com/bradleyjkemp/memviz (fetched 2026-08-28T04:04:15.683408+00:00, sha 34a03be8314b)
- Data as of 2026-08-30T08:39:29.467469+00:00.
