Getting started
Commands
Run every command from the repository root. Proxy scripts forward the action to the active variant.
Daily cycle
| Command | Purpose |
|---|---|
bun run init | guided configuration and installation |
bun run dev | Astro server for the active variant |
bun run build | static generation into dist/ |
bun run preview | local preview of the latest build |
bun run variant | print the active variant |
Compare variants
The live interactive preview is the fastest way to compare a synchronized public revision and share its settings. To compare the source currently checked out on your machine, run:
bun run preview:allThe command prepares all six variants, then serves them on ports 4321 through 4326. It is designed as a complete workflow, not a thin wrapper around stale builds.
Create a post
bun run new-post mon-premier-articlebun run new-post my-first-post --locale enbun run new-post paired-post --translatebun run new-post plain-markdown --markdownThe scaffolder refuses to overwrite an existing file and creates a valid .mdx draft by default. --markdown is the explicit opt-in for a .md file.
Generated fields are documented in Content model and the Complete reference.
Cross-variant checks
bun run check-linksbun run check-assetsbun run typecheckbun run check:allcheck-links and check-assets target the active variant. typecheck runs astro check on every variant. check:all first validates Open Graph assets, editorial style and cross-variant conformance, then typechecks, builds and validates links, asset budgets and Open Graph output for all seven. Pass a variant name to narrow the run:
bun run check-variants organiqueTests, linting and drift
| Command | Purpose |
|---|---|
bun run test | unit tests for the shared helpers |
bun run test:e2e | Playwright end-to-end suite against built variants |
bun run lint | Biome lint and format check |
bun run format | apply Biome formatting |
bun run check-style | editorial rules: no em or en dash, no emoji in documentation |
bun run check-drift | compare built HTML against a saved baseline (--save captures it) |
test:e2e expects the tested variants to be built and Chromium installed (bun x playwright install chromium). Quality and accessibility explains when each check earns its place.
Dependency management
The repository is a Bun workspace: a single bun install at the root covers the tooling, the shared core, every variant and the npm packages. The normal root workflow installs missing dependencies automatically.