Skip to content

Scaffold Starlight docs site and migrate content#1759

Draft
kmcginnes wants to merge 14 commits intofeat/starlight-docsfrom
feat/1754-starlight-docs
Draft

Scaffold Starlight docs site and migrate content#1759
kmcginnes wants to merge 14 commits intofeat/starlight-docsfrom
feat/1754-starlight-docs

Conversation

@kmcginnes
Copy link
Copy Markdown
Collaborator

Description

Scaffolds a Starlight (Astro) documentation site in packages/docs/ and migrates all existing documentation from docs/.

  • Scaffold graph-explorer-docs package with Astro + Starlight
  • Configure site URL, base path, and autogenerated sidebar
  • Add docs:dev and docs:build root scripts; exclude docs from global build/dev
  • Migrate 24 markdown files with frontmatter and admonition conversion
  • Move images to src/assets/ and static downloads to public/
  • Add GitHub Actions workflow for deployment to GitHub Pages
  • Replace old docs/ with redirect README and update root README links

Validation

  • pnpm docs:build exits 0 and produces 25 pages
  • pnpm build still works (docs excluded)
  • pnpm test passes all 1680 tests
  • Dev server (pnpm docs:dev) renders all pages with working navigation and search

Related Issues

Check List

  • I confirm that my contribution is made under the terms of the Apache 2.0 license.
  • I have verified pnpm checks passes with no errors.
  • I have verified pnpm test passes with no failures.
  • I have covered new added functionality with unit tests if necessary.
  • I have updated documentation if necessary.

kmcginnes added 14 commits May 7, 2026 10:57
- Add graph-explorer-docs package with Astro + Starlight
- Configure site URL and base path for GitHub Pages
- Set up sidebar with autogenerated sections
- Add docs:dev and docs:build scripts to root
- Exclude docs from global build/dev commands
- Allow sharp in onlyBuiltDependencies
- Convert 24 markdown files from docs/ to packages/docs/src/content/docs/
- Add frontmatter with titles extracted from first headings
- Convert GFM admonitions to Starlight syntax (:::tip, :::note, :::caution)
- Move images to src/assets/ for Astro optimization
- Move static downloads (scripts, JSON) to public/
- Move architecture.md and development.md into references/
- Update image and file paths for new directory structure
- Deploy to GitHub Pages on push to main when packages/docs/ changes
- Use pnpm/action-setup and actions/deploy-pages
- Support manual workflow_dispatch trigger
- Configure concurrency to prevent parallel deployments
- Replace docs/ contents with redirect README pointing to deployed site
- Update root README links to use https://aws.github.io/graph-explorer/
- Keep root README images/ untouched (serves GitHub repo landing page)
- Remove manual breadcrumb links (Starlight has built-in breadcrumbs)
- Remove duplicate H1 headings (frontmatter title renders as h1)
- Fix broken link to development.md (moved to references/)
- Fix cross-repo links to use GitHub URLs (samples, ROADMAP)
- Fix self-referencing paths in references/development.md
- Move HTML-referenced images to public/ for correct resolution
- Upgrade to Astro 6.1.6 + Starlight 0.38.3 (fixes moderate XSS vuln)
- Pin all dependency versions to exact (matching monorepo convention)
- Pin GitHub Actions to commit SHAs (matching unit.yml pattern)
- Add workflow file to path trigger filter
- Add step names to workflow for readability
- Add description frontmatter to all 24 content pages
- Convert .md links to slug-style paths (Starlight routing)
- Fix static file links in troubleshooting.md
- Use relative path in hero link instead of hardcoded base
- Match package version to other packages (3.0.3)
- Update content.config.ts for Astro 6 loader API
Move ECS Fargate images from src/assets/ and public/assets/ into
src/content/docs/guides/_images/ so they live alongside the content.
Convert HTML img tags to markdown for consistent Astro processing.
Move static downloads (JSON policies, shell script) from public/ into
_assets/ alongside images. Replace all hardcoded /graph-explorer/ asset
paths with relative references. Remove empty public/ directory.
Convert deploy-to-sagemaker and troubleshooting to .mdx and render
the shell script and JSON policies as syntax-highlighted code blocks
with copy buttons via raw imports and <Code> component.
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.

1 participant