Build & deploy

Deploy targets

static-paths, manifest-pointer, github, both. Pick the one that fits how you serve.

What it is

StaticOwl ships four deploy targets, picked per-site:

Target What it does When to use
static-paths Writes files to S3 under /{site}/{env}/path. Default. Marketing sites, classic CDN deploys.
manifest-pointer Content-addressed artifacts + a manifest pointer. Deploy = pointer flip. Audit-grade deploys, atomic blue/green, replayable rollbacks.
github Pushes the rendered tree to a Git repo branch. Customer can fork and self-host. Open-source docs, customer-mirrorable archives.
both static-paths + github simultaneously. Hybrid setups during migration.

Why manifest-pointer is the architectural moat

A deploy is one S3 PUT flipping a single current.json pointer. CloudFront resolves that pointer at the edge in <10ms via Lambda@Edge. The site is in exactly one state at any moment — there's no window where some readers see the new version and some see the old.

Rollback is the same operation in reverse: flip the pointer back. The old artifacts are still there (content-addressed, immutable), so rollback is instant.

Same Release can promote staging → prod with zero rebuild — the artifacts are already there, only the pointer differs.

What it gets you

Read the deploy-targets doc →