# Changelog

<!-- Generated from the repository-root CHANGELOG.md by docs/scripts/sync-changelog.mjs. Do not edit by hand. -->

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.

## v0.2.1 (2026-08-14)

Metadata-only release: no code changes.

- 🛠️ Reworked the npm keywords. `astro-integration` is gone: the default export is a Starlight plugin, so `astro add starlight-pydocs` would have wired up the wrong thing.
- 🛠️ Published with npm provenance.

## v0.2.0 (2026-08-14)

- ✨ Syntax-highlighted signatures, in your `markdown.shikiConfig` themes. 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>.md` too, for "Copy Markdown" buttons and agents. `pageMarkdown: false` turns it off.
- ✨ `listPydocsPages()` from `starlight-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)

First release. Python API reference documentation for Astro and Starlight sites, extracted with [Griffe](https://mkdocstrings.github.io/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.inv` and `llms.txt` published 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.