Skip to content

Migrate Hugo docs to the Nebari Starlight baseline - #53

Merged
jbouder merged 2 commits into
mainfrom
docs/starlight-migration
Aug 25, 2026
Merged

Migrate Hugo docs to the Nebari Starlight baseline#53
jbouder merged 2 commits into
mainfrom
docs/starlight-migration

Conversation

@jbouder

@jbouder jbouder commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Closes #52.

Replaces the Hugo + hugo-book site in docs/site/ with an Astro + Starlight project at docs/, using the shared @nebari/starlight theme plugin, matching the docs baseline in the pack repos (mlflow-pack, nebi-pack, …).

What changed

  • Content: all 27 pages migrated to docs/src/content/docs/ with the same URLs (_index.mdindex.md, front matter reduced to title, duplicated leading H1s stripped since Starlight renders the title, {{< relref >}} shortcodes converted to plain paths). Sidebar nav is now explicit in astro.config.mjs, mirroring the old weight-based order.
  • Theme: plugins: [nebari()] provides the shared Nebari identity; docs/public/favicon.svg is the skillsctl icon. CNAME and images carried into docs/public/.
  • CLI reference: tools/docs-gen now emits plain-path cross-links instead of Hugo relrefs; output goes to docs/src/content/docs/cli/reference/ (still generated in CI, gitignored, surfaced via a Starlight autogenerate sidebar group). make docs-cli updated.
  • Tooling: baseline remark-base-links plugin + vitest tests, and scripts/check-links.sh internal link checker.
  • CI: docs.yml rewritten to the baseline shape — Node 22, npm ci, unit tests, CLI-reference generation, SITE/BASE-driven build, link check — now also running on PRs.
  • Removed: hugo.toml, docs/site/go.mod/go.sum, layouts/, custom CSS.

Deploy note

Now deploys to Cloudflare Pages (project skillsctl) behind the packs.nebari.dev portal Worker, with per-branch PR preview deploys and a preview-URL comment — the full pack baseline. pack-metadata.yaml sets docs_site: true and points links.docs at https://packs.nebari.dev/skillsctl/.

⚠️ The org secret CLOUDFLARE_API_TOKEN is not currently shared with this repo (only CLOUDFLARE_ACCOUNT_ID is) — an org admin needs to add skillsctl to that secret's repository access list or the deploy step will fail.

Verified locally

  • go test ./tools/docs-gen/
  • npm test (10 tests) ✅
  • go run ./tools/docs-gen -o docs/src/content/docs/cli/reference && npm run build — 42 pages, Pagefind index, sitemap ✅
  • scripts/check-links.shLINKS_OK for both BASE=/ and a BASE=/skillsctl/ subpath build ✅

🤖 Generated with Claude Code

jbouder and others added 2 commits August 25, 2026 13:50
Replace the Hugo + hugo-book site in docs/site/ with an Astro + Starlight
project at docs/ using the shared @nebari/starlight theme plugin:

- migrate all 27 content pages to docs/src/content/docs/, converting Hugo
  front matter and relref shortcodes to plain paths, with the section nav
  expressed as an explicit Starlight sidebar
- update tools/docs-gen to emit Starlight-compatible cross-links
- rewrite .github/workflows/docs.yml to the baseline shape (Node 22,
  npm ci, unit tests, build, internal link check) while keeping the
  GitHub Pages deploy that serves skillsctl.dev
- add the baseline remark-base-links plugin (+ vitest tests) and
  scripts/check-links.sh internal link checker
- carry CNAME and images into docs/public/ and remove the Hugo toolchain

Closes #52

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Now that the dashboard Worker routes packs.nebari.dev/skillsctl/ to
skillsctl.pages.dev:

- pack-metadata.yaml: set docs_site: true and point links.docs at
  https://packs.nebari.dev/skillsctl/
- docs.yml: adopt the baseline Cloudflare Pages deploy with per-branch
  preview deploys and a PR preview comment, replacing GitHub Pages
- astro.config.mjs: default SITE to https://packs.nebari.dev and send
  the header logo back to the pack catalog
- drop the GitHub Pages CNAME and update the README docs link

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@jbouder
jbouder merged commit 3f1bde4 into main Aug 25, 2026
10 of 11 checks passed
@jbouder
jbouder deleted the docs/starlight-migration branch August 25, 2026 18:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate Hugo Docs to the Nebari Starlight Baseline

1 participant