# Release notes

## 0.2.15 — 2026-09-08 (library)

- Fix early client navigation by allowing React hydration to be superseded and avoiding hydration of stale server markup.
- Add metadata-only MDX imports for navigation and avoid loading raw page bodies for production search.
- Fetch search previews only while the palette is open, and cancel stale requests.
- Make both navigation rails configurable with wider 280px defaults, and stabilize sidebar labels while scrolling.
- Support independent product version manifests.

## 0.2.7 — 2026-08-02 (library)

- **Per-tab version chips**: new [`TabDef.versionChips`](/reference/config.md)
  field scopes the topbar version chips to a top-level tab. A tab omitting
  the field inherits the global [`versionChips`](/reference/config.md); `[]`
  shows none on that tab; a non-empty array replaces them for that tab only.
  Lets a site show cli-only chips on the CLI tab, py-only on the Python
  tab, and none on design/other tabs.

## 0.2.6 — 2026-07-20 (library)

- **Dependency layout**: `react`/`react-dom` peers widened to `>=19`
  (org convention: sites track `react@latest`); `tailwindcss` moved
  from a dependency to a `^4` peer so it resolves at the consuming
  site's root under strict CI installs.

## 0.2.5 — 2026-07-20 (library)

- **Chip component**: the canonical badge idiom is now a first-class
  export — [``](/reference/components/chip.md) with `muted` / `accent` /
  `warn` variants, clickable (`onClick` renders a real button), and
  `className`/`style` passthrough for one-off colors. Registered in
  the MDX component map, so `` works in any page without an
  import.
- The topbar **DEV badge**, the gallery status chips, and the
  `TestStatus` badge now render through `` — no visual change,
  the idiom is just defined once.

## 0.2.4 — 2026-07-20 (library)

- **Search-engine opt-in**: new [`indexable`](/reference/config.md) field —
  sites are `noindex, nofollow` by default per org policy; set
  `indexable: true` on the sites meant to be publicly discoverable.
  In-site search and the llms/skill surfaces are unaffected.

## 0.2.3 — 2026-07-20 (library)

- **DEV badge**: the dev-mode indicator in the topbar is now a labeled
  warn-colored `DEV` chip (was a small orange dot); clicking it still
  turns the hidden-pages toggle off.
- **`headScripts`** `SiteConfig` field: external script URLs injected
  into every page head at SSR time — restores integrations like the
  Studio design-picker bridge for migrating sites.

## 0.2.2 — 2026-07-20 (library)

- **All-hidden tabs hide**: a tab whose pages are all `hidden` (e.g. an
  internal `/dev` tab) no longer renders in the topbar unless the
  hidden-pages toggle is on or you are already inside it.

## 0.2.0 — 2026-07-20 (library)

Fleet features upstreamed from the newest DreamLake docs sites, ahead
of the org-wide migration onto dockit:

- **Segmented ThemeToggle** (from uikit/dreamlake): new
  [`themeToggle`](/reference/config.md) `SiteConfig` field — `'cycle'` (default,
  the existing single cycling button) or `'segmented'` (the
  three-button slider with a sliding indicator). See
  [Theming](/guides/theming.md#themetoggle). This site runs `'segmented'`.
- **Preview fullscreen** (from uikit): an expand button in the
  [Preview](/reference/components/preview.md) header grows the frame to a
  full-viewport overlay for wide demos; Esc exits. Icons are inlined
  SVGs — no new dependency.
- **Trailing-slash-tolerant path matching** (from studio): new
  `normalizePath` / `findPage` exports, used everywhere active-page
  matching happens (sidebar `aria-current`, breadcrumbs, `<title>`
  sync, prev/next, TOC md/edit links) so prerender and client routing
  agree. See [Sidebar](/reference/components/shell.md#sidebar).
- **`dev:` frontmatter alias** (from studio): `dev: true` now implies
  `hidden: true` + `noindex: true`, so studio content migrates
  unchanged. See [Authoring](/guides/authoring.md).
- **`VersionBadge` exported** standalone (donor: uikit), with the
  version-switcher manifest now fetched production-origin-first so
  frozen deploys list current releases (needs the `/versions.json`
  CORS header — in `netlify.example.toml` and
  [Releases & versioning](/guides/releases.md)).
- CodeBlock header controls (language / `:set nu` / copy) are now
  hover-gated, keeping prose-adjacent code blocks quiet (#8).

## 0.2.1 — 2026-07-20 (docs)

- New [Releases & versioning](/guides/releases.md) guide — the versioned
  docs-deploy flow as consumer-facing docs: the two version axes, the
  `versions.json` manifest, the actual `set-version.mjs` /
  `version-branch.sh` scripts embedded from source, Netlify
  branch-deploy URLs, and the prod/staging promotion flow. The hidden
  [Versioning](/guides/releases.md) dev page slims down to
  workspace-internal details.
- The library now ships a copy-in release kit at
  `templates/` — `set-version.mjs`, `version-branch.sh`,
  `versions.example.json`, `netlify.example.toml` — referenced from
  the [Quickstart](/get-started/quickstart.md) and
  [migration guide](/get-started/migration.md).
- `versions.json` URL-scheme fix: per-version entries now point at the
  canonical Netlify branch-deploy addresses
  (`v<x-y-z>--dockit-docs.netlify.app`), which resolve without any
  DNS setup, instead of pretty subdomains that required a manual
  Netlify domain-management step per release.

## 0.2.0 — 2026-07-20 (docs)

- Docs reorganized into the five-tab tree — Get Started, Guides,
  Components, Skills, Reference — with 301 redirects covering the old
  URLs (see [Netlify](/guides/releases.md)). Deploy internals (Netlify,
  versioning) moved into the hidden Dev cluster; the
  [dockit skill](/guides/llms.md) got its own page.
- New [migration guide](/get-started/migration.md) for moving an existing
  docs site onto dockit.
- Component gallery added under the hidden Dev section.
- Skill-generation upgrades in `gen-llms.mjs`: curated "Use when"
  triggers via the [`skillTriggers`](/reference/config.md) config field (ships
  in library 0.1.1 below), quickstart + routing guidance in the
  generated `SKILL.md`, and a bundled `api-types.md` type reference.
- "Orient your agents" CLAUDE.md fragment for consuming repos, in the
  [Quickstart](/get-started/quickstart.md) and
  [migration guide](/get-started/migration.md).

## 0.1.1 — 2026-07-20 (library)

- `noindex: true` pages are now excluded from the pagefind index: the
  Layout omits `data-pagefind-body` on them, matching what the docs
  always said (see [Search](/guides/search.md)). Previously the marker
  was stamped on every page, so noindex pages still got indexed.
- The [`skillTriggers`](/reference/config.md) `SiteConfig` field ships — the
  curated "Use when" phrases consumed by skill generation.
- The package ships the `templates/` release kit — `set-version.mjs`,
  `version-branch.sh`, `versions.example.json`, and
  `netlify.example.toml`, ready to copy from
  `node_modules/@dreamlake/dockit/templates/` (see
  [Releases & versioning](/guides/releases.md)).

## 0.1.0 — 2026-07-19

- Initial release. The docs shell extracted from `lakeshore-workspace`
  into the `@dreamlake/dockit` package: components, the
  navigation/search/tabs singletons plus `initDocs`, the Vike renderer
  entries, the `dockit()` Vite plugin factory, and `styles.css` with
  its `@source` directive.
- Published as pure ESM, without sourcemaps — see
  [Package exports](/reference/exports.md).
- dockit.dreamlake.ai live, built with the library itself.
