Releases: cloudflare/nimbus
Release list
@cloudflare/nimbus-docs@0.8.0
Minor Changes
-
#42
8e4e210Thanks @MohamedH1998! - Add the ownership + upgrade loop to thenimbus-docsCLI:nimbus-docs init— reconstruct animbus.jsonfor a project that lacks one (scaffolded before this record existed, an existing Astro site adopting Nimbus, or a deleted record), matching installed components against the registry and marking what it can't recover.nimbus-docs outdated— a read-only check across both tiers: starter files behind theirtemplates-v*tag (whichgit diffcan't show) and registry components whose recorded bytes differ from the registry.nimbus-docs diff [file]/diff --apply <file>— review upstream/your changes to starter files, and pull a clean upstream change per file (never a merge).nimbus-docs add <slug> --overwrite— re-install a component over your copy (review withgit diff).addalso records each install innimbus.json.
Also adds a
getRouteFlagslayout-flag helper and a CI guard for the registry tier invariants.Migration —
add --yesno longer overwrites files you own. It now assents to prompts (dependency installs, etc.) but keeps existing files on conflict, so a bare-yin CI never clobbers your code. Use--overwriteto replace files.# before — --yes overwrote conflicting files nimbus-docs add card --yes # after — replace files explicitly nimbus-docs add card --overwrite
-
#34
73bbecfThanks @mvvmm! -nimbus/internal-linkandnimbus/image-refnow match theirignore: string[]option against full glob syntax (**,*,{a,b}, extglobs, …) viapicomatch, not just an exact match or aprefiximmediately followed by/**. In particular, a leading any-depth wildcard like**/llms.txtis now supported — the previous hand-rolled matcher had no way to express that.Existing
ignorelists using only exact paths orprefix/**patterns keep working unchanged.
@cloudflare/nimbus-docs@0.7.1
Patch Changes
- #36
738c8a0Thanks @mvvmm! - Merge partial headings into the parent page's TOC.<Render file="..." />
partials that contain literal markdown headings (## Foo) now contribute
those headings to the parent page's "On this page" table of contents, in
document order, recursively. PasspartialHeadings: { resolvePartialId }
togetDocsPageProps()/getCollectionPageProps()to customise how
<Render>attributes map to a partial collection id (e.g. cloudflare-docs'
productconvention).
@cloudflare/create-nimbus-docs@0.6.2
Patch Changes
-
#42
8e4e210Thanks @MohamedH1998! - Scaffolded projects now include a committednimbus.json— a CLI-managed record of thecreate-nimbus-docsversion, thetemplates-v*tag, the install root, and (as younimbus-docs add) each installed component's provenance. Starter components also get an API-consistency pass:type→varianton Banner/Callout,VersionPicker→VersionSwitcher, hydration moved out of inline scripts into.client.tsfiles via themount()primitive, and a singlegetRouteFlagslayout-flag helper. The scaffoldedAGENT.mdnow documents theoutdated/diff/add --overwriteupgrade flow. -
#34
b8a1235Thanks @mvvmm! - Bump for the@cloudflare/nimbus-docsminor in this release (full glob support forignoreininternal-link/image-ref) — no starter-source changes.
@cloudflare/nimbus-docs@0.7.0
Minor Changes
- #27
1ebfb6cThanks @MohamedH1998! - Addiconto sidebar groups — an optional leading icon (astro-icon name) before the group label. Set it two ways: on a directory'sindexfrontmatter (sidebar: { group: { icon: "ph:…" } }) or on a configsidebar.itemsgroup entry ({ label, icon: "ph:…", autogenerate: … }). Threaded through the group schema,SidebarGroupItem/SidebarConfigItemtypes, and the sidebar tree builder (both the content-derived and config-defined paths).
@cloudflare/create-nimbus-docs@0.6.1
Patch Changes
-
#32
a6491c8Thanks @MohamedH1998! - Fix a batch of UI stress-sweep defects in the starter components:- TOC scroll-spy no longer desyncs when a heading slugs to an empty id (e.g. an emoji-only
## 🎉). The active-heading index now stays aligned with the full link/rail set instead of a resolvable-only subset, so every section below an unresolvable heading highlights correctly. - Mobile sidebar hamburger survives client-side navigation — the toggle re-binds on
astro:page-loadand tears down onastro:before-swap(viamount()), fixing a dead button after the first view transition, with the scroll lock balanced on a mid-open swap. - Dialog content taller than the cap now scrolls inside the panel (
overflow-y-auto) so the close button stays reachable. - Banner long unbroken strings (including the framework deprecation banner's version URL) wrap instead of overflowing.
- PackageManagers blocks with identical props on one page now get unique, incremental-build-stable DOM ids (per-page counter), fixing duplicate
id/aria-controls. - Dev-only warnings:
<Steps>around a bullet list, and duplicate labels within a<Tabs syncKey>group.
- TOC scroll-spy no longer desyncs when a heading slugs to an empty id (e.g. an emoji-only
@cloudflare/create-nimbus-docs@0.6.0
Minor Changes
-
#27
1ebfb6cThanks @MohamedH1998! - Align the sidebar + add a mobile "On this page" TOC matching cloudflare-docs, and tighten the docs layout's mobile and horizontal-overflow handling.- Sidebar + TOC: the sidebar filter gains a
press / to focuskbd hint and aplaceholderprop; sidebar groups render an optional leading icon (fromsidebar.group.icon); and a sticky native-<select>"On this page" TOC now appears under the page title on viewports belowxl, where the desktop TOC rail hides. - Mobile sidebar drawer: the drawer no longer dims or blurs the page — it slides in over a transparent overlay so the page copy stays readable, with a hairline edge instead of a shadow. Both the drawer panel and the desktop sidebar now paint their own background and contain overscroll, fixing a "no background" flash on fast/momentum scroll.
- Tabs: a tab strip wider than its column now scrolls horizontally (scrollbar hidden) instead of leaking past the page width, and the active tab is scrolled into view on activate/restore.
- Prose: long unbroken tokens (URLs, hashes) wrap within the content column via
overflow-wrap: break-wordinstead of overflowing the page; code blocks and wide tables keep their own scroll handling.
- Sidebar + TOC: the sidebar filter gains a
@cloudflare/create-nimbus-docs@0.5.2
Patch Changes
-
#24
52d5a0cThanks @MohamedH1998! - Fix scaffolded starter behavior across client-side navigations and add a 404 page.- Re-run component initializers on
astro:page-loadso interactive components (code groups, dialogs, popovers, file trees, search) keep working after ClientRouter/view-transition navigations. - Scope the search dialog's global key handler to a module variable instead of an
<html>attribute, preventing a duplicateCmd+Khandler from stacking on each navigation. - Mark inline SVG icons with
is:inlineso they render reliably. - Ship a default
404.astropage in the starter.
- Re-run component initializers on
nimbus-docs@0.4.0
Minor Changes
-
#13
456ca74Thanks @MohamedH1998! - Move to Astro 7nimbus-docsnow peers onastro ^7.0.0(was>=6.4.0 <7.0.0) and builds
against the Astro 7 ecosystem:@astrojs/mdx ^7,@astrojs/markdown-satteri ^0.3.4(Sätteri^0.9), Vite 8. The markdown pipeline — Sätteri plus the
hastPlugins/mdastPluginsseam and Shiki dual-theme output — is unchanged;
the Sätteri0.6→0.9jump left the plugin-definition types intact, so no
seam code moved.Astro 7 makes Sätteri the default processor, which unblocks opt-in server
output alongside it (the gate for hosted MCP, Ask AI, and content
negotiation).Starter templates: Tailwind v4 now wires through
@tailwindcss/vite
instead of the PostCSS plugin, which does not build under Astro 7's Vite 8
bundler. Scaffolded projects gain@tailwindcss/viteand drop
@tailwindcss/postcss+postcss.config.mjs.Breaking (peer): sites must be on Astro 7. The
unified()escape hatch
for remark/rehype plugins still works, but@astrojs/markdown-remarkmust
now be installed explicitly (pnpm add @astrojs/markdown-remark) — pnpm does
not expose it for import even though@astrojs/mdxpulls it transitively.
create-nimbus-docs@0.4.0
Minor Changes
-
#13
456ca74Thanks @MohamedH1998! - Move to Astro 7nimbus-docsnow peers onastro ^7.0.0(was>=6.4.0 <7.0.0) and builds
against the Astro 7 ecosystem:@astrojs/mdx ^7,@astrojs/markdown-satteri ^0.3.4(Sätteri^0.9), Vite 8. The markdown pipeline — Sätteri plus the
hastPlugins/mdastPluginsseam and Shiki dual-theme output — is unchanged;
the Sätteri0.6→0.9jump left the plugin-definition types intact, so no
seam code moved.Astro 7 makes Sätteri the default processor, which unblocks opt-in server
output alongside it (the gate for hosted MCP, Ask AI, and content
negotiation).Starter templates: Tailwind v4 now wires through
@tailwindcss/vite
instead of the PostCSS plugin, which does not build under Astro 7's Vite 8
bundler. Scaffolded projects gain@tailwindcss/viteand drop
@tailwindcss/postcss+postcss.config.mjs.Breaking (peer): sites must be on Astro 7. The
unified()escape hatch
for remark/rehype plugins still works, but@astrojs/markdown-remarkmust
now be installed explicitly (pnpm add @astrojs/markdown-remark) — pnpm does
not expose it for import even though@astrojs/mdxpulls it transitively.
@cloudflare/nimbus-docs@0.6.1
Patch Changes
- #22
7ec9715Thanks @MohamedH1998! - Republish with npm provenance attestations. Supersedes 0.6.0 / 0.5.0, which published without provenance and before the repo was public.