Esc

Installation

Streak.js projects use the streak-forge CLI for development and builds. The project is configured via streak.sitemap.json and standard package.json scripts.


CLI Commands

There are two primary CLI commands:

streak-forge dev

Starts the development server with hot-reload. Pages are rendered on request.

streak-forge dev

streak-forge pre-build

Used internally by the Nexus build pipeline. Reads the sitemap, renders all pages, and writes static HTML to out/. You do not need to run this command directly — Nexus runs it as part of the publish flow.


package.json Scripts

A typical Streak project uses the following scripts:

"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",
  "css-build":  "tailwindcss -i ./src/common/styles/input.css -o ./public/styles/tailwind.css"
}
ScriptWhat it does
devRuns CSS watch and streak-forge dev concurrently
dev:streakRuns the Streak dev server directly
buildCompiles Tailwind CSS then runs streak-forge pre-build (used by Nexus)
css-buildCompiles Tailwind CSS to public/styles/tailwind.css

Running the Development Server

bun run dev

The dev server renders pages on demand and reloads on file changes.


Building and Deploying

Production builds are handled by Nexus. When you publish your site, Nexus runs the build pipeline and deploys the output based on your site configuration. You do not need to run bun run build locally for production.

For publishing and deployment steps, refer to the Nexus documentation.


CSS / Tailwind

Streak projects use Tailwind CSS compiled at build time. The compiled CSS file is written to public/styles/tailwind.css and linked from layouts. There is no CSS-in-JS — all styles are generated ahead of time.