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 itemsExactly your dependencies, and nothing else.
-
01
Version-exact
Docs for the precise
module@versionin your go.mod — not whatever pkg.go.dev happens to show today. Pin extra versions to compare a release against an upgrade target. -
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.
-
03
Terminal or browser
docudex searchfor a quick answer in the terminal,docudex servefor a local web UI — both backed by the same SQLite FTS5 index with BM25 ranking. -
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.
-
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. -
06
Team-friendly
The committed
docudex.tomlis the source of truth for doc scope. A teammate gets identical docs from a fresh clone with onedocudex sync. -
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. -
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.
-
01
Install the binary
Linux and macOS.
$ curl -fsSL https://raw.githubusercontent.com/aureliushq/docudex/main/install.sh | shOr run
go install github.com/aureliushq/docudex@latest, or download a prebuilt binary for your platform from the releases page. -
02
Initialize the manifest
Run
docudex initin your repo. It readsgo.mod, writes adocudex.tomlpinning 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 onedocudex 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"
-
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
-
04
Browse in the local web UI
docudex servestarts a local web UI backed by the same index — browse docsets by module, package, and symbol.docudex listshows 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.