Parent PRD
What to build
Create the Starlight docs project inside packages/docs/ using the official template, configure it for deployment to GitHub Pages, and wire it into the monorepo scripts.
End-to-end, this means:
- Run
pnpm create astro --template starlight/tailwind to scaffold into packages/docs/
- Set package name to
graph-explorer-docs in the generated package.json
- Configure
astro.config.mjs:
site: "https://aws.github.io"
base: "/graph-explorer"
- Sidebar with autogenerated groups for
getting-started/, features/, guides/, references/
- Tailwind via the template defaults (no custom theme yet)
- Create the directory structure under
src/content/docs/ matching the target layout (empty placeholder index.md files are fine)
- Update root
package.json:
- Add
"docs:dev": "pnpm --filter graph-explorer-docs dev"
- Add
"docs:build": "pnpm --filter graph-explorer-docs build"
- Modify
"build" and "dev" to exclude docs: --filter "!graph-explorer-docs"
- Verify
pnpm install succeeds and pnpm docs:dev starts the dev server
- Verify
pnpm docs:build produces output in packages/docs/dist/
Acceptance criteria
Blocked by
None - can start immediately
User stories addressed
- User story 1 (search)
- User story 2 (sidebar navigation)
- User story 4 (dark/light mode)
- User story 5 (local preview with hot reload)
- User story 7 (monorepo conventions)
- User story 9 (excluded from global build)
- User story 10 (dedicated docs scripts)
- User story 12 (landing page)
Parent PRD
What to build
Create the Starlight docs project inside
packages/docs/using the official template, configure it for deployment to GitHub Pages, and wire it into the monorepo scripts.End-to-end, this means:
pnpm create astro --template starlight/tailwindto scaffold intopackages/docs/graph-explorer-docsin the generatedpackage.jsonastro.config.mjs:site: "https://aws.github.io"base: "/graph-explorer"getting-started/,features/,guides/,references/src/content/docs/matching the target layout (empty placeholderindex.mdfiles are fine)package.json:"docs:dev": "pnpm --filter graph-explorer-docs dev""docs:build": "pnpm --filter graph-explorer-docs build""build"and"dev"to exclude docs:--filter "!graph-explorer-docs"pnpm installsucceeds andpnpm docs:devstarts the dev serverpnpm docs:buildproduces output inpackages/docs/dist/Acceptance criteria
packages/docs/exists with a working Starlight + Tailwind project scaffolded from the official templatepnpm docs:devstarts the dev server and renders the default Starlight pagepnpm docs:buildexits 0 and produces static outputpnpm buildandpnpm devdo NOT build/start the docs packagesiteandbasefor GitHub PagesBlocked by
None - can start immediately
User stories addressed