https://github.com/samber/go-mod-graph
🔭 Go module dependency visualizer
https://github.com/samber/go-mod-graph
dependencies go golang graph module mvs package package-manager pkg release visualization
Last synced: 4 days ago
JSON representation
🔭 Go module dependency visualizer
- Host: GitHub
- URL: https://github.com/samber/go-mod-graph
- Owner: samber
- License: mit
- Created: 2026-01-05T00:20:45.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-02-01T18:49:24.000Z (2 months ago)
- Last Synced: 2026-02-15T12:33:33.515Z (about 2 months ago)
- Topics: dependencies, go, golang, graph, module, mvs, package, package-manager, pkg, release, visualization
- Language: TypeScript
- Homepage: https://go-mod-graph.samber.dev
- Size: 514 KB
- Stars: 12
- Watchers: 0
- Forks: 1
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Go module dependency graph
A web-based Go module dependency visualizer that helps you explore and understand the dependency tree of any Go module.
🌐 **Try it live:** [go-mod-graph.samber.dev](https://go-mod-graph.samber.dev)
## 🚀 Features
- ⚡ **Interactive Dependency Graph** - Interactive, zoomable dependency visualization
- 🔍 **Minimal Version Selection (MVS)** - Go's MVS algorithm for accurate dependency resolution
- 📦 **Version Management** - View and select module versions with searchable dropdown
- 📊 **Module Weights** - Optional size display with color-coded badges
- 🔧 **Custom Proxy Support** - Configure custom Go module proxy for enterprise/offline use
- 📚 **One-Click Documentation** - Click nodes to open module docs on pkg.go.dev
## ⛽️ Usage
### Development
Start both the proxy server and the frontend dev server:
```bash
# Terminal 1: Start the Go proxy server
cd proxy
go run main.go
# Terminal 2: Start the frontend dev server
cd app
npm run dev
```
Open your browser and navigate to `http://localhost:5173`
### Production Build
```bash
export VITE_GO_MOD_PROXY_URL=xxxx
export ALLOWED_ORIGINS=yyyy
export PORT=8080
# Build the frontend
cd app
npm run build
# Build the Go proxy server
cd ../proxy
go build -o go-mod-graph-proxy main.go
```
The built frontend files will be in `app/dist/`. The proxy server can serve these files directly.
## 🤝 Contributing
- Ping me on Twitter [@samuelberthe](https://twitter.com/samuelberthe) (DMs, mentions, whatever :))
- Fork the [project](https://github.com/samber/go-mod-graph)
- Fix [open issues](https://github.com/samber/go-mod-graph/issues) or request new features
Don't hesitate ;)
## 👤 Contributors

## 💫 Show your support
Give a ⭐️ if this project helped you!
[](https://github.com/sponsors/samber)
## 📝 License
Copyright © 2026 [Samuel Berthe](https://github.com/samber).
This project is [MIT](./LICENSE) licensed.