Changelog
All notable changes to starlight-pydocs are recorded here. New work is added under Unreleased and rolled into a dated version section when a release is cut.
Unreleased
Section titled “Unreleased”v0.3.0 (2026-10-05)
Section titled “v0.3.0 (2026-10-05)”- ✨ An agent skill with a setup checklist, shipped in the package at
skills/starlight-pydocs/SKILL.mdand shown on the docs site. - ✨ Works with starlight-codeblocks when a site installs it, with no configuration. Names in Python code blocks anywhere on the site link to their API reference pages (docstring examples to the pages of their own version), type links in signatures and parameter tables get the same hover card as code (what the type is, where it comes from, and where the link goes), long docstring examples collapse behind an expand button, and inline code in docstrings is highlighted as Python when the site has inline highlighting on. The symbols are published for other plugins at
globalThis[Symbol.for('starlight-pydocs')]. - 🐛 Fixed signatures rendering without syntax colours on sites that don’t install
@astrojs/markdown-remark(the Astro 7.2+ default). Shiki is now a direct dependency. If your site added@astrojs/markdown-remarkonly for signature colours, you can remove it.
v0.2.1 (2026-08-14)
Section titled “v0.2.1 (2026-08-14)”Metadata-only release: no code changes.
- 🛠️ Reworked the npm keywords.
astro-integrationis gone: the default export is a Starlight plugin, soastro add starlight-pydocswould have wired up the wrong thing. - 🛠️ Published with npm provenance.
v0.2.0 (2026-08-14)
Section titled “v0.2.0 (2026-08-14)”- ✨ Syntax-highlighted signatures, in your
markdown.shikiConfigthemes. Cross-references stay links. - ✨ Long attribute values laid out across lines, folding behind a “Show more” toggle.
- ✨ Annotation links to another site open in a new tab; links to your own objects show the target’s summary on hover.
- ✨ Version labels linking to the matching GitHub, GitLab or Bitbucket release.
- ✨ Every generated page served as Markdown at
<path>.mdtoo, for “Copy Markdown” buttons and agents.pageMarkdown: falseturns it off. - ✨
listPydocsPages()fromstarlight-pydocs/pages, for share cards or an index of the generated pages. - 🛠️ Generated pages carry their own description, from the module’s docstring.
- 🛠️ “Added in” is plain text beside the source link, not a badge.
- 🐛 Fixed spacing throughout the generated pages on Starlight sites, and object names that looked like inline code.
v0.1.0 (2026-08-14)
Section titled “v0.1.0 (2026-08-14)”First release. Python API reference documentation for Astro and Starlight sites, extracted with Griffe.
- One reference page per Python module, on injected routes, with a sidebar tree, prev/next links, a table of contents and anchors that match mkdocstrings.
- No Python needed on the docs host: griffe runs through
uvx, or a pre-generated dump is read from a file or a URL. - Every docstring section griffe parses, in google, numpy, sphinx or auto style, rendered through the host site’s own markdown processor.
- Type annotations linked to this site’s pages, to Python’s own documentation, or to any configured Sphinx inventory.
[title][dotted.path]cross-references in prose resolve the same way. - Member selection that follows mkdocstrings:
__all__, then griffe’s visibility flags, refined by include/exclude globs and filters. Inherited members are merged and badged with their origin. - Symbol search, plus
symbols.json,objects.invandllms.txtpublished per package. <Autodoc name="mypkg.Thing" />to document a single object inside a hand-written page, and a Content Layer loader for the whole surface.- Source links to GitHub, GitLab, Bitbucket or a URL template.
- “Added in” badges, generated by extracting a list of git refs and comparing them with the current source.
- Usable as a Starlight plugin or as a plain Astro integration, with component overrides,
--pyd-*theme tokens and translations for thirteen languages.