MCPcopy Index your code
hub / github.com/bradleyjkemp/memviz

github.com/bradleyjkemp/memviz @v0.2.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.2.3 ↗ · + Follow
33 symbols 100 edges 5 files 3 documented · 9%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

memviz Build Status Coverage Status Go Report Card GoDoc

How would you rather debug a data structure?

"Pretty" printed Visual graph
(*test.fib)(0xc04204a5a0)({
 index: (int) 5,
 prev: (*test.fib)(0xc04204a580)({
  index: (int) 4,
  prev: (*test.fib)(0xc04204a560)({
   index: (int) 3,
   prev: (*test.fib)(0xc04204a540)({
    index: (int) 2,
    prev: (*test.fib)(0xc04204a520)({
     index: (int) 1,
     prev: (*test.fib)(0xc04204a500)({
      index: (int) 0,
      prev: (*test.fib)(),
      prevprev: (*test.fib)()
     }),
     prevprev: (*test.fib)()
    }),
    prevprev: (*test.fib)(0xc04204a500)({
     index: (int) 0,
     prev: (*test.fib)(),
     prevprev: (*test.fib)()
    })
   }),
   .
   .
   .

Usage

memviz takes a pointer to an arbitrary data structure and generates an easy to understand graph.

Simply pass in your data structure like so: memviz.Map(out, &data) and then pipe the output into graphviz.

For more complete examples see the tests in memviz_test.go.

Core symbols most depended-on inside this repo

Map
called by 10
memviz.go
getNodeKey
called by 10
memviz.go
newBasicNode
called by 8
memviz.go
mapValue
called by 6
memviz.go
escapeString
called by 5
memviz.go
getNodeID
called by 4
memviz.go
mapStruct
called by 1
collections.go
mapSlice
called by 1
collections.go

Shape

Function 14
Method 11
Struct 6
TypeAlias 2

Languages

Go100%

Modules by API surface

memviz_test.go13 symbols
memviz.go9 symbols
basic.go5 symbols
escape_test.go3 symbols
collections.go3 symbols

For agents

$ claude mcp add memviz \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page