Built with @tech0ver/starlight, the shared Astro/Starlight UI for tech0ver sites.
Use Node.js 24 and Bun 1.4.0.
The shared package is installed from GitHub Packages through the committed
.npmrc. Set NODE_AUTH_TOKEN to a GitHub personal access token (classic) with
read:packages and access to @tech0ver/starlight. Authentication is required
even for public packages. Keep the token outside the repository, for example in
~/.config/tech0ver/npm.env as NODE_AUTH_TOKEN=..., with file permissions 600.
Load this file for installation in any checkout:
bun --env-file="$HOME/.config/tech0ver/npm.env" installIf NODE_AUTH_TOKEN is already exported in your shell, plain bun install works.
bun install
bun run dev # dev server at http://localhost:4321/sysdes/
bun run build # production build into dist/
bun run preview # serve dist/ locallySearch requires the Pagefind index generated by bun run build; use the
production preview to check search results.
Update @tech0ver/starlight in package.json and bun.lock, then rebuild.
Use the peer dependency versions documented by that release. Site settings are
in astro.config.mjs; articles, glossary entries, diagrams, and site extensions
stay in this repository. Shared visual changes belong in the package.
Pull requests run a frozen install and production build. GitHub Actions uses
GITHUB_TOKEN with packages: read; this repository must have read access under
the package's Manage Actions access settings. Pushes to main build and
deploy to GitHub Pages.