Documentation site for the StellarAdmin components, built with TanStack Start and Fumadocs.
- TanStack Start (Vite) — app framework, static prerendering (SSG)
- Fumadocs (
fumadocs-core/fumadocs-ui/fumadocs-mdx) — docs engine + MDX content - Tailwind CSS v4 + shadcn/ui (base-ui,
base-vegastyle) with the Fumadocs shadcn theme - oxlint / oxfmt — lint & format
This project uses pnpm and blocks other package managers (engine-strict + only-allow pnpm). Install pnpm first.
pnpm installpnpm dev # start the dev server (http://localhost:3000)
pnpm build # build + static prerender to .vercel/output
pnpm preview # preview the production build
pnpm lint # oxlint + oxfmt check
pnpm format # oxfmt (write)
pnpm types:check # regenerate .source types + tsc --noEmit- Docs live in
content/docs(theuisection). Navigation is driven bymeta.jsonfiles. MDX partials under_include/are pulled in with<include>and are not standalone pages. - Blog posts live in
content/blog. - Static component demos are served from
public/demoand embedded via the<Demo>component. They are exported byDocsSamplesGeneratorin the separate stellar-admin product repo, which injects a script into every page so demos follow the site's light/dark mode (the next-themesthemelocalStorage key) — same-origin localStorage plus storage events, no iframe messaging. The demos use the default theme. The theme builder's presets ship under stable names inpublic/demo/ui/assets/presets/(one variable file each, listed inpresets.json, exported from the product's theme fixtures inutil/theme-check/presets/). The variable manifest for the theme builder isassets/stellar-admin.theme-variables.json.
- OG image generation (the old Next.js
/og/docs/...route) is not yet ported; it needs a satori/takumi-based renderer on TanStack Start and is tracked as a follow-up.
Read contributor guidance for verification, generated-content ownership, and cross-repository work. This website builds independently; a product checkout is needed only when changing or regenerating product samples.