Bunny Storage Support Now Available in LaunchFast Starter…
LaunchFast Logo LaunchFast
Blog
546 words 3 min read

Bunny Storage Support Now Available in LaunchFast Starter Kits

LaunchFast works with Bunny Storage out of the box. Same STORAGE_PROVIDER=s3, same pre-signed upload flow — just point AWS_ENDPOINT_URL_S3 at your Bunny S3 endpoint.

Rishi Raj Jain
Rishi Raj Jain Author
Bunny Storage Support Now Available in LaunchFast Starter Kits

LaunchFast now works with Bunny Storage — and we didn’t have to ship a single line of starter kit code to make it happen.

Same repo. Same STORAGE_PROVIDER=s3. Plug in your Bunny S3 endpoint and credentials, and you’re uploading files through the same pre-signed URL flow LaunchFast already uses for Amazon S3, Cloudflare R2, and Neon Storage.

One stack. One dashboard. Ship faster.

Why this matters

LaunchFast treats object storage as S3-compatible by default. Bunny Storage exposes an S3 API, so avatars, uploads, and generated assets just work — no adapter, no fork, no waiting on a release.

  • No code changes: The kit already supports custom S3 endpoints, Bunny Storage is already supported.
  • Edge-friendly storage: Bunny Storage sits close to Bunny’s global CDN — a natural fit when you want fast file delivery without juggling multiple vendors.
  • Simple pricing: Pay for storage and bandwidth on Bunny’s terms, not AWS egress surprises.

What’s included

  • S3-compatible uploads and retrieval via LaunchFast’s existing /api/storage routes and <Upload /> component
  • Pre-signed URLs for secure client-side uploads — identical flow to other S3 providers
  • One env var: AWS_ENDPOINT_URL_S3 points the S3 client at your Bunny regional endpoint
  • Available in all frameworks: Astro, Next.js, and SvelteKit starter kits

Under the hood, LaunchFast’s S3 helper already routes requests through a custom endpoint when AWS_ENDPOINT_URL_S3 is set. Bunny Storage plugs into that same path.

Getting started

1. Create a Storage Zone with S3 compatibility

In the Bunny dashboard, go to Delivery → Storage and create a storage zone.

When creating the zone, enable S3 compatibility — this is required for LaunchFast’s S3-based upload flow. See Bunny’s storage quickstart for S3 compatibility.

2. Copy your S3 credentials

Open your storage zone, then go to Access → S3. Copy:

  • S3 endpoint URL (regional, e.g. https://[region]-s3.storage.bunnycdn.com)
  • Bucket name (your storage zone name)
  • Access key ID (your storage zone name)
  • Secret access key (your storage zone password)
  • Region (example, la)

3. Configure your .env

Set STORAGE_PROVIDER to s3, then add your Bunny Storage credentials:

Terminal window
STORAGE_PROVIDER="s3"
AWS_ENDPOINT_URL_S3="https://[region]-s3.storage.bunnycdn.com"
AWS_KEY_ID="your-storage-zone-name"
AWS_SECRET_ACCESS_KEY="your-storage-zone-password"
AWS_S3_BUCKET_NAME="your-storage-zone-name"
AWS_REGION_NAME="de"

Do not set CLOUDFLARE_R2_ACCOUNT_ID when using Bunny Storage — that variable is only for Cloudflare R2.

Use the exact endpoint and region shown in your Bunny dashboard’s Access → S3 tab. Bunny’s access key is your storage zone name, not your account API key.

4. Run the app and upload a file

Start your dev server, sign in, and upload a profile image or any file through the built-in upload flow. LaunchFast generates a pre-signed PUT URL against your Bunny bucket, the browser uploads directly, and retrieval works through the same signed-URL path.

For framework-specific setup notes, see the Storage section in the starter kit README:

Other storage providers

Bunny Storage joins the storage providers LaunchFast already supports:

Switch providers anytime by updating STORAGE_PROVIDER and the relevant env vars. No application code changes required.

Get started today

Ready to pair LaunchFast with edge storage and a global CDN?

Get LaunchFast Starter Kit and point it at Bunny Storage in minutes.

Continue reading