Skip to content

Docs#175

Open
Marve10s wants to merge 9 commits intomainfrom
docs-starlight-site
Open

Docs#175
Marve10s wants to merge 9 commits intomainfrom
docs-starlight-site

Conversation

@Marve10s
Copy link
Copy Markdown
Owner

Summary

  • add a Starlight-powered docs app served from /docs
  • generate ecosystem and option reference pages from shared stack metadata
  • add installation, CLI, AI-agent, MCP, and llms.txt documentation
  • wire the web build to regenerate docs output and keep generated static output ignored

Validation

  • bun run --cwd apps/docs typecheck
  • bun run build:docs
  • pre-commit lint

@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 24, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
better-fullstack-web Ready Ready Preview, Comment Apr 25, 2026 0:18am

@github-actions github-actions Bot added size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. labels Apr 24, 2026
Comment thread apps/docs/scripts/generate-docs.ts Fixed
- Port the Fumadocs "black" neutral-grayscale palette to the Starlight
  theme tokens so chrome is monochrome with hairline borders.
- Replace the header with a custom component: mono brand, mono nav links,
  search trigger wired to Starlight Pagefind with a cmd-K kbd, GitHub icon,
  theme toggle. Drops the old Try-now CTA and stats counters.
- Restyle the left sidebar with Geist Mono items, a 2px left-border active
  indicator, uppercase tracking-wider section labels, and a thin scrollbar.
- Rebuild the right TOC as a tree rail: per-item 1px rails positioned by
  --depth, with quarter-circle curves on nested <ul>::before and ::after to
  bridge depth changes. Active heading lights up its rail segment.
- Add a PageTitle component with Copy MD and Open in (GitHub, Raw, llms.txt).
  Copy MD swaps to a check icon and tints green on success, red on error.
- Flip the landing page off the splash template to a plain first-doc page.
@Marve10s Marve10s changed the title Add Starlight documentation site Docs Apr 24, 2026
Migrates the documentation site from a separate Astro/Starlight app at
apps/docs to native TanStack Start routes inside apps/web. Single app,
single deploy, single dev server. All MDX content preserved.

Why: cross-framework boundary between Astro static export and TanStack
Start dev server caused recurring rendering and search bugs (Cannot GET
/docs, page-inside-page hydration), and Fumadocs UI is Next.js-only so
it can't run inside the TanStack Start app directly.

What's new in apps/web:
- Vite MDX pipeline: @mdx-js/rollup with remark-frontmatter,
  remark-mdx-frontmatter, remark-gfm, custom remarkExtractToc (emits
  TOC + heading ids), custom remarkNpmTabs (rewrites npm code blocks
  to <PMTabs />), and @shikijs/rehype for syntax highlighting.
- Source loader (src/lib/docs/source.ts) builds page tree from
  meta.json sidebar configs and resolves slugs to MDX modules at
  build time via import.meta.glob.
- Routes: /docs (index) and /docs/$splat catch-all share a renderer.
- DocsLayout: 3-col grid (sidebar / content / TOC) with a mobile
  slide-in drawer animated via motion.
- Sidebar + TableOfContents: motion layoutId for active rail
  animation; IntersectionObserver picks active heading by intersection
  ratio with document-order tiebreak.
- MDX components: CodeBlock (Shiki + copy), PMTabs (npm/pnpm/bun/yarn
  with cross-page localStorage sync + storage event), Callout.
- Cmd/Ctrl+K SearchDialog: Orama index built lazily on first open from
  the eager-globbed raw MDX, keyboard nav, grouped by page, footer
  shortcut hints. Trigger replaces NavbarStats only on /docs/* routes.
- docs-prose typography block in global.css scoped to docs content.

Removed:
- apps/docs/* (Starlight scaffold, custom CSS, generate-docs.ts)
- apps/web/public/docs/* (stale static export)
- docs#build task in turbo.json
- prebuild dependency on apps/docs in apps/web/package.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL 1,000+ effective changed lines (test files excluded in mixed PRs). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants