SvelteKit Buckets
Mechanics worth naming: on deploy, the app’s declared build runs, output is copied into the bucket’s seed path, and the route serves the new version as one unit. Rollback is redeploying the previous declaration; the old “which bucket did CI upload to?” archaeology cannot happen, because the bucket is a stack resource with a name in the manifest.
SvelteKit’s prerendering strengths carry straight over: fully static marketing pages, prerendered docs, and an SPA shell (fallback_mode: "spa") for the application proper. Canonical redirects collapse .html and slash variants to one URL by default — the SEO detail hand-rolled hosting setups routinely get wrong.
When the app needs data, it calls the project’s functions and workers through routes on the same hostnames — same-origin by construction, CORS ceremony mostly absent. Frontend and backend stop being separate deployments that discover each other at runtime.
CLI
Plan SvelteKit Buckets, then deploy.
kernstack plan
kernstack plan
kernstack deploy Frequently asked questions
adapter-static. KERNSTACK serves the built output from a bucket; server-side rendering belongs in a Node.js worker if a route genuinely needs it, with the static app calling it.
The build output replaces the published set as one deploy unit, and canonical redirects keep one URL per page. Teams add cache headers per asset class in app configuration when aggressive caching is wanted.
Yes. API routes (functions or workers) and the app’s prefix route coexist in the gateway, so fetches are same-origin and private routes can demand the project’s API key.
Related capabilities, architectures, and comparisons
Ship your stack on the Software Lifecycle Cloud.
Closed preview on dedicated European infrastructure. Bring a repository or start from a blueprint.