Platform · Data

KERNSTACK Buckets

Buckets are KERNSTACK’s object storage inside the project: named buckets hold uploads, media, documents, and published sites; browsers upload directly on presigned URLs; workers can mount bucket prefixes as volumes; and a gateway prefix route can serve a bucket as a website. Files stop being a separate storage account with its own keys and start being project data.

Why teams replace assembled cloud services with KERNSTACK Buckets

Teams otherwise run an object-store account with its own keys, lifecycle rules, and CDN bolted on. On KERNSTACK the bucket, the route that serves it, and the code that issues its upload URLs are one declaration in the project’s European zone.

How files move

The bytes never pass through your functions. A handler issues a presigned URL, the browser or partner uploads straight to the bucket, and the resulting object key is registered against the record it belongs to. Seed objects under seed/buckets/{name}/ upload after each deploy — the mechanism that publishes frontend apps and content sites from the same pipeline.

Buckets as websites and as filesystems

A prefix route turns a bucket into a site: default_key serves index.html, prefix can expose only part of the bucket (published/ versus draft/), fallback_mode chooses SPA shell or honest 404, cdn_enabled adds cached delivery. In the other direction, worker volumes mount a bucket prefix at /volumes/, so tools that expect files — transcoders, model loaders — work unmodified.

  • Storage at 0.04 credits per GB-hour, egress at 9.00 credits per GiB — the same meter as everything else
  • Single-object routes exist too: a bucket route without type prefix aliases one key
  • Retention and lifecycle follow the project’s table-driven sweeps; buckets are part of subject erasure scans

SDKs & Language Integration

Every KERNSTACK environment vendors typed SDK packages into .kernstack/ so both engineers and coding agents in Agent Sandboxes can call Buckets without external credentials:

  • Go SDK: github.com/coding-berlin/kernstack-sdk-go/sdk_buckets
  • Node.js SDK: kernstack-sdk
  • Python SDK: kernstack_sdk
  • PHP SDK: Kernstack\Buckets

European alternatives to the hyperscaler equivalent

Implementation guides for Buckets

Frequently asked questions

Your function or worker issues a presigned URL scoped to the bucket, the browser uploads directly, and completion is recorded against the owning record. Large files stop being an API design constraint.

Yes. Declare a prefix route with default_key and the bucket becomes the site — with canonical redirects, an optional CDN, and a declared 404 policy. Frontend apps built on deploy publish exactly this way.

0.04 credits per GB-hour, like table storage. There is no per-request price list to decode; delivery egress meters at 9.00 credits per GiB when it leaves.

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.