Our Go modules keep their manual and their reference in the source: the package comments explain how the pieces fit, the doc comments every exported identifier. Each release tag publishes the HTML built from them under /godoc/. The table below always shows the newest published version. The Ruby gems do the same with RDoc.
| Module | Engine page | Release tag |
|---|---|---|
inkwell |
Inkwell | vX.Y.Z in engines/inkwell |
Each module keeps its ten newest versions; /godoc/inkwell/latest/ always points at the newest, and the version switcher at the top of every page moves between them.
The module's CLAUDE.md says it and CI enforces it: a push fails if revive (the exported rule, revive.toml in the repo) finds an exported type, function, method, constant or variable without a doc comment.
[Name] and [pkg.Name] links, # Heading sections in package comments, lists with -, code as an indented block.doc.go; the manual — how to build a game, with examples — lives there. The README.md only links here.doc2go builds the HTML and a meta.json (version, commit, date).godoc.tar.gz as a Gitea generic package in the engines org, named after the module with a -godoc suffix.latest and rewrites /godoc/index.json.latest, so a release needs no wiki edit.If a round fails, the wiki-fetcher's /health turns red. Details: fetcher/README.md in services/wiki-pages.