streak-forge
streak-forge is the Streak.js CLI. It has two commands: dev for local development and pre-build for generating the static site.
Commands
streak-forge dev
Starts a development server with hot-reload. Pages are rendered on request rather than written to disk.
streak-forge dev - Renders each page when it is requested
- Watches source files and reloads on changes
- Runs dev-specific versions of pipeline stages 5–7 (no disk output)
- Does not write to
out/
streak-forge pre-build
Reads streak.sitemap.json, processes every page through all 7 pipeline stages, and writes static HTML to out/.
streak-forge pre-build - Runs all 7 pipeline stages for every sitemap entry
- Writes
out/<renderId>/index.htmlfor each entry renderIdmust be unique across all entries
Output Structure
out/
homeRenderId/
index.html
aboutRenderId/
index.html
Each directory name is the renderId from the sitemap entry.
Typical package.json Integration
"scripts": {
"dev": "concurrently ... \"bun run css-dev\" \"bun run dev:streak\"",
"dev:streak": "streak-forge dev",
"build": "bun run css-build && streak-forge pre-build",
"start": "python3 -m http.server 8000 --directory out"
} Run dev:
bun run dev Run build:
bun run build Preview the built output locally:
bun run start