Stardoc is a documentation generator for Bazel APIs such as custom rules written in Starlark.
Stardoc provides a Bazel rule (stardoc, see documentation) that can be used to generate Markdown documentation for Starlark rules. Stardoc generates one documentation page per .bzl file.
Stardoc runs a Velocity template on the output of the native.starlark_doc_extract rule.
Modules published to the Bazel Central Registry do not need to use Stardoc. They can simply publish the starlark_doc_extract outputs as a release artifact. See https://github.com/bazelbuild/bazel-central-registry/blob/main/docs/stardoc.md.
Stardoc is a replacement for the deprecated “Skydoc” documentation generator.
See Skydoc Deprecation for details on the deprecation and migration details.
See our future plans for refactoring Stardoc to be more consistent with how Bazel evaluates .bzl files, and what it means for maintenance of this project.
See the maintaner's guide for instructions for cutting a new release.