Visualising dependencies in Go
dave.cheney.net
dave.cheney.net
The goal already implies, that what's important here, are the (both direct and indirect) dependencies between their packages. To understand those better, you do not need to draw a dependency to any Go core library or other 'uninteresting' library, which would be a leaf in the directed graph or whose transitive dependencies are only 'uninteresting'.
I think those chord graphs might actually be the way to go, if you'd just restrict the amount of packages to the relevant ones.
It might be nice to automatically add references to source lines where those dependencies are needed to the tooltip.
- Trying to get rid of a specific problematic dependency? It's easy to filter a DAG to only those paths that lead to a particular node.
- Trying to reduce the raw number of dependencies? Consider collapsing clusters of transitive dependencies down to a single node. (If one of your direct dependencies pulls in 20 unique deps of its own, you don't really need to know what they are or how they're connected to each other -- just that there are 20 of them.)