Go API reference aggregator v0.1.0

DOCUDEX

Per-project, version-exact Go API reference docs. Point it at a repo and search your dependencies from the terminal, or browse them in a local web UI — scoped to exactly what you use, fully offline.

$ curl -fsSL https://raw.githubusercontent.com/aureliushq/docudex/main/install.sh | sh

FEATURES

01 / 08 items

Exactly your dependencies, and nothing else.

  1. 01 Version-exact

    Docs for the precise module@version in your go.mod — not whatever pkg.go.dev happens to show today. Pin extra versions to compare a release against an upgrade target.

  2. 02 Scoped to your project

    Search returns your own dependency surface and the Go standard library — no results from packages you never imported, no noise.

  3. 03 Terminal or browser

    docudex search for a quick answer in the terminal, docudex serve for a local web UI — both backed by the same SQLite FTS5 index with BM25 ranking.

  4. 04 Fully offline

    Fetching needs the network once. After that every docset in your store is browsable and searchable with no connection — on a plane, in a locked-down environment, or when the docs site is down.

  5. 05 Never scrapes

    Docs are extracted from real module source over the Go module proxy protocol and rendered locally with go/doc. They don't rot when a documentation website gets redesigned.

  6. 06 Team-friendly

    The committed docudex.toml is the source of truth for doc scope. A teammate gets identical docs from a fresh clone with one docudex sync.

  7. 07 Single binary

    One download or one go install. Pure Go, CGO-free, with the web UI embedded — nothing to configure at runtime, no database to run.

  8. 08 Greppable Markdown

    Canonical docs are plain Markdown in a content-addressed store — greppable today, and ready for coding agents to consume with no integration tomorrow.

USAGE

02 / 04 steps

Free and open source. One dependency-free binary — no account, no service. Point docudex at a Go repo and it reads your go.mod, fetches the exact versions you use, and indexes them locally.

  1. 01
    Install the binary

    Linux and macOS.

    $ curl -fsSL https://raw.githubusercontent.com/aureliushq/docudex/main/install.sh | sh

    Or run go install github.com/aureliushq/docudex@latest, or download a prebuilt binary for your platform from the releases page.

  2. 02
    Initialize the manifest

    Run docudex init in your repo. It reads go.mod, writes a docudex.toml pinning your direct dependencies (plus the Go standard library) to exact versions, and fetches their docs into the store. Commit the manifest so teammates get identical scope with one docudex sync.

    $ docudex init
    OK read      go.mod     38 direct deps + std
    OK fetched   -> ~/.docudex/store
    OK wrote     docudex.toml
    
    # docudex.toml — commit it
    [[docset]]
    module  = "github.com/spf13/cobra"
    version = "v1.8.1"
    
    [[docset]]
    module  = "github.com/charmbracelet/fang"
    version = "v0.2.0"
  3. 03
    Search from the terminal

    docudex search <query> runs full-text search over only your project's docsets, ranked by relevance with highlighted snippets and the owning package and symbol.

    $ docudex search "context.WithTimeout"
    
    context · WithTimeout(parent Context, timeout Duration) (Context, CancelFunc)
      Returns a copy of the parent context with the deadline adjusted …
    
    net/http · Server.Shutdown(ctx Context) error
      Gracefully shuts down the server without interrupting connections …
    
    2 results across 38 docsets · 6ms
  4. 04
    Browse in the local web UI

    docudex serve starts a local web UI backed by the same index — browse docsets by module, package, and symbol. docudex list shows everything in scope and its fetch state.

    $ docudex serve
    OK index     ready · scoped to this project
    serving docs on http://localhost:8080
    
    $ docudex list
      MODULE                          VERSION   FETCHED
      github.com/spf13/cobra          v1.8.1    OK
      github.com/charmbracelet/fang   v0.2.0    OK
      std                             go1.26    OK

Run docudex --help for the full command tree — or read the design of record in CONTEXT.md.