Analysis updated 2026-05-18
Watch a running Go server's memory and goroutine counts in real time to catch leaks early.
Diagnose garbage collection pauses that are slowing down a production Go application.
Add a live health dashboard to a Go service without setting up an external monitoring stack.
Send custom application metrics into the same dashboard alongside the built-in runtime charts.
| arl/statsviz | johanneskaufmann/html-to-markdown | spegel-org/spegel | |
|---|---|---|---|
| Stars | 3,635 | 3,636 | 3,634 |
| Language | Go | Go | Go |
| Setup difficulty | easy | easy | moderate |
| Complexity | 2/5 | 2/5 | 3/5 |
| Audience | developer | developer | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Statsviz is a library for Go programs that adds a live dashboard showing what the program is doing internally while it runs. You add a few lines of code to your application, open a URL in a browser, and see a set of real-time charts that update every second without any manual instrumentation. The charts cover the internal health of a running Go program: how much memory is allocated on the heap, how many objects are alive, how many goroutines are active, how often the garbage collector runs and how long its pauses last, how the CPU is split between your application code and the runtime's own housekeeping work, and more. Goroutines are a core Go concept for running concurrent tasks, the garbage collector is the automatic memory cleanup system built into Go. If either of these starts misbehaving, it often shows up in the charts before it causes visible problems. The technical setup is simple. Statsviz registers two HTTP endpoints alongside your existing server: one serves the dashboard web page and the other is a websocket connection that streams the metrics. When you open the dashboard, your browser connects to the websocket and starts receiving data points. Everything runs inside your own program on your own machine or server, so no external service is involved. The dashboard UI lets you filter charts by category, adjust how much time history is shown, toggle visibility of garbage collection events on the timeline, and pause the live feed if you want to examine a specific moment. You can also define your own custom plots and send your application's own data into the same dashboard. The library works with most Go HTTP frameworks and can be placed behind authentication middleware or served at a custom path if the default location does not fit your setup. The repository includes working examples for several popular frameworks.
A Go library that adds a live, real-time browser dashboard showing memory, goroutines, and garbage collection inside your running program.
Mainly Go. The stack also includes Go, WebSockets, HTTP.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.