archview

Introduction

A live architecture flow graph for Go backends, generated from your source.

archview is a Go library that renders a live, interactive architecture flow graph of your backend. Mount it in main.go, open /graph in a browser, and watch your endpoints flow through controller → service → repository — generated automatically from your source, with no annotations.

It is framework-agnostic (net/http, gin, echo, gRPC, GraphQL) and pattern-aware (modular MVC, hexagonal ports & adapters, CQRS / event buses): the arrows follow the call graph of whatever layout you actually use. Click any node to jump straight to its definition in your editor.

How is this different from go-callvis?

archview builds on the same idea (a static call graph) but adds three layers on top: it knows your HTTP endpoints, it groups functions into architectural layers, and every node links back to its source line.

What it shows

  • Endpoints detected from your route registrations (gin, net/http).
  • Layers — each function classified as controller / service / repository.
  • Call edges — controller → service → repository, resolved through interfaces via a CHA call graph.
  • Modules — grouped into swimlanes (e.g. user, product, catalog).

Next steps

On this page