No description
  • MDX 40.6%
  • CSS 25.7%
  • Astro 21.5%
  • TypeScript 9.3%
  • Nix 2.5%
  • Other 0.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-11-07 02:59:24 -06:00
.forgejo/workflows Publish with the git-pages action instead of pushing a pages branch 2026-11-07 02:58:48 -06:00
public Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
src InstallTabs: render in a <pre>, blank-line fix, flake-input tab 2026-11-07 02:21:07 -06:00
.gitignore Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
astro.config.mjs Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
flake.lock Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
flake.nix Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
LICENSE Initial commit 2026-11-07 01:31:06 -06:00
package-lock.json Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
package.json Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00
README.md Publish with the git-pages action instead of pushing a pages branch 2026-11-07 02:58:48 -06:00
tsconfig.json Set up star homepage & docs site (Astro + MDX) 2026-11-07 02:01:54 -06:00

star pages ✦

Homepage & documentation site for star — a simple yet capable template management system.

Built with Astro + MDX, sprinkled with small React islands (the hero's typing terminal and the copy-to-clipboard install tabs), statically indexed by pagefind for docs search, and themed as a cute corner of space: nebula gradients, twinkling stars, shooting stars, and one smiling placeholder mascot.

Develop

Everything comes from nix — no global installs:

nix develop          # nodejs + pagefind
npm install          # first run only
npx astro dev        # dev server at http://localhost:4321

The search box needs a build to index into existence; in astro dev it politely says so instead of crashing.

Production build (with search index):

npx astro build && pagefind --site dist
npx astro preview    # serve the result locally

Or skip node entirely:

nix build .#site     # full build, deterministic, output in ./result
nix run .            # serve the flake-built site on :4321
nix flake check      # what CI runs

Layout

src/
  content/docs/        the documentation, as MDX
  content.config.ts    collection schema (title, description, status)
  nav.ts               sidebar order — new pages register here
  components/          Logo, Terminal, Callout, StatusBadge (astro)
                       TypingTerminal, InstallTabs (react islands)
  layouts/             BaseLayout (shell, starfield) / DocsLayout (sidebar+toc)
  pages/               landing, 404, and the docs route
  styles/global.css    the whole design system (tokens → starfield → prose)
  shiki-theme.ts       "Deep Space" syntax theme for code blocks
public/
  fonts/               vendored Nunito + Source Code Pro (OFL, see headers)
  favicon.svg
.forgejo/workflows/
  deploy.yml           builds via nix, publishes with the git-pages action

Documentation content tracks the planned feature set of star/star; each CLI page carries an implementation-status badge matching docs/PLAN.md in the main repository. The logo is a placeholder — swap src/components/Logo.astro and public/favicon.svg when a real mascot arrives.

Deploy

Pushing to main triggers deploy.yml, which builds the site with nix and publishes the output to https://star.pages.jingus.dev/ using the git-pages action — the same pattern jingus/pages uses. git-pages is request-driven, so this publish step (not a branch push) is what updates the live site.

License

MIT — same as star itself.