Instant static deploys: from directory to URL in one command
app.nz hosts static sites behind a URL instantly — app sites deploy uploads, diffs, and prunes a directory so a deploy is the exact state of your build, scriptable into CI or an agent run.
The last mile of building something is putting it somewhere people can load it. app.nz hosts static sites — a built frontend, a landing page, a docs bundle, the output of a coding agent — behind a URL, instantly, from one command.
Deploy a directory
app sites create my-app --title "My App"
app sites deploy my-app ./distdeploy uploads the directory, diffs it against what's already live, and prunes files you removed — so a deploy is the state of ./dist, not an append. Your site is served immediately at its app.nz URL, with the right content types and caching, no build step on our side required.
Why hosted static is the right default
Most "apps" are a static bundle plus API calls. You don't need a container or a server process to serve the bundle — you need a fast CDN-backed origin and a way to ship to it in one step. That's what /sites is:
- Instant. No build queue; the upload is the deploy.
- Atomic-ish. The diff+prune means a deploy converges to exactly your directory, with no stale files left behind.
- Scriptable.
app sites deploydrops into any CI step or scheduler; ignore patterns keep.mapfiles or secrets out. - Paired with agents. A coding agent that builds a site can deploy it in the same run.
Ignore what shouldn't ship
app sites deploy my-app ./dist --ignore .map --ignore .DS_StoreRepeated --ignore substrings skip files you don't want public; --no-prune keeps previously-deployed files when you're uploading a partial set.
List and inspect
app sites list
app sites get <id>Hosting is one of the cloud primitives app.nz gives you alongside the coding agent, the model gateway, and schedulers — the pieces you need to take an idea from prompt to a URL without leaving the toolchain.