LaunchFast now works with Tigris, and we didn’t ship a single line of starter kit code to make it happen.
Tigris is globally redundant object storage built for developers: bottomless capacity, zero egress fees, and a familiar S3 API. Swap the endpoint, keep your code. Same repo. Same STORAGE_PROVIDER=s3. Point AWS_ENDPOINT_URL_S3 at https://fly.storage.tigris.dev, add your bucket credentials, and you’re uploading files through the same pre-signed URL flow LaunchFast already uses for Amazon S3, Cloudflare R2, Neon Storage, and Bunny Storage.
One stack. One endpoint. Ship faster.
Why this matters
LaunchFast treats object storage as S3-compatible by default. Tigris speaks S3 natively, 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. Tigris is already supported.
- Zero egress fees: Read as often as you need, from any region, without bandwidth bills stacking up.
- Global by default: Geo-redundant storage with a single endpoint. Data stays close to users without you wiring cross-region replication.
- Bottomless scale: No per-account storage caps. Scale uploads without capacity planning.
What’s included
- S3-compatible uploads and retrieval via LaunchFast’s existing
/api/storageroutes and<Upload />component - Pre-signed URLs for secure client-side uploads, identical flow to other S3 providers
- One env var:
AWS_ENDPOINT_URL_S3points the S3 client athttps://fly.storage.tigris.dev - 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. Tigris plugs into that same path.
Getting started
1. Create a Tigris bucket
Sign up at tigrisdata.com and create a bucket through the dashboard or the Tigris CLI. Generate an access key pair while you’re there. Keys start with tid_, secrets with tsec_.
See the Tigris docs for the full setup walkthrough.
2. Configure your .env
Set STORAGE_PROVIDER to s3, then add your Tigris credentials:
STORAGE_PROVIDER="s3"
AWS_ENDPOINT_URL_S3="https://fly.storage.tigris.dev"AWS_KEY_ID="tid_..."AWS_SECRET_ACCESS_KEY="tsec_..."AWS_S3_BUCKET_NAME="your-bucket-name"AWS_REGION_NAME="auto"Do not set CLOUDFLARE_R2_ACCOUNT_ID when using Tigris. That variable is only for Cloudflare R2.
Region is always auto.
3. 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 Tigris 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
Tigris joins the storage providers LaunchFast already supports:
- Amazon S3 · /documentation/storage/amazon-s3/
- Cloudflare R2 · /documentation/storage/cloudflare-r2/
- Neon Storage · /blog/neon-storage-support/
- Bunny Storage · /blog/bunny-storage-support/
- Supabase Storage · /documentation/storage/supabase/
- Firebase Storage · /documentation/storage/firebase/
Switch providers anytime by updating STORAGE_PROVIDER and the relevant env vars. No application code changes required.
Get started today
Want globally distributed object storage with zero egress fees and no new upload API to wire?
Get LaunchFast Starter Kit and point it at Tigris in minutes.