PRODSovereign European BaaS platformOpen Dashboard →
STORAGE · S3 + CDN + TRANSFORMS

An S3 bucket,
done right.

S3-compatible API, on-the-fly image transformations, signed URLs by default, 12-region CDN. Antivirus scanning and resumable uploads included.

94%
CDN HIT RATE
12
REGIONS
5TB
MAX OBJECT
app/upload.tsTYPESCRIPT
const { data, error } = await aura
.storage.from('avatars')
.upload(`${user.id}/${file.name}`, file, {
cacheControl: 'max-age=31536000, immutable',
contentType: file.type,
upsert: true,
})
// Automatic resumable upload if file > 6MB · 6MB chunks, auto-retry
#
Feature set

Everything modern cloud storage demands

S3-compatible API

AWS S3 SDK, mc (MinIO), and rclone work out of the box. Your Terraform and Ansible scripts do too.

S3 API v4 · SIGV4

On-the-fly transforms

Resize, format (WebP/AVIF/JPEG), quality, crop, rotate, blur. 12-region edge cache with invalidation under 200ms.

AVIF · WEBP · CACHE

Signed URLs by default

HMAC-SHA256, anti-replay nonce, explicit TTL, forced attachment download. Zero accidental public exposure.

HMAC · TTL CONFIG

Resumable uploads

6MB chunks with automatic resume, resilience to network drops, granular client-side progress tracking.

RESUMABLE · 6MB CHUNKS

Automatic malware scan

ClamAV + proprietary threat signatures. Infected files are quarantined with immediate webhook alerting.

CLAMAV · REAL-TIME

12-region CDN

Edge cache across Europe, Americas, APAC. TLS 1.3, HTTP/3, and programmatic cache purge by tag.

HTTP/3 · TLS 1.3
#
Transforms

From source to render, in a single URL

Transformations are simple URL query parameters, not an external API pipeline. The result: an immutable edge cache per unique transformation, compatible with any framework.

SOURCE · 2.1 MB · JPEG
4096×4096
/object/public/avatars/cover.jpg
TRANSFORMED · 18 KB · AVIF · −99%
240×240
/object/public/avatars/cover.jpg?width=240&format=avif&quality=80
#
Performance

CDN edge first, origin as fallback

94%
CDN HIT RATE
Edge cache on public objects, 30-day average
148ms
P99 UPLOAD
For a 1MB file · direct-to-origin via multipart
12
POP REGIONS
Anycast IP, BGP latency-based routing
63%
AVIF SAVINGS
Average file size vs JPEG at identical visual quality
#
Comparison

Aurabase · Supabase · GCS

FeatureAurabaseSupabaseGCS + CDN
Compatible APIS3 · GCS · AzureS3 onlyGCS
Included transformsYes · unlimitedAdd-on $5/moVia Cloud Functions
AVIF outputNativeNoVia 3rd-party
Virus scanAuto · ClamAVNoAdd-on
Included CDN12 regions1 regionSeparate CDN
BillingGB × month + egressGB × month + egressGB × month + egress
Open sourceApache 2.0Apache 2.0Proprietary
#
FAQ

Frequently asked questions

What is the difference compared to AWS S3 + CloudFront?+
You get the entire stack unified: storage, image transforms, global CDN, RLS, and signed URLs. No 5 separate consoles, no 4 different bills. The S3-compatible APIs are identical — you can migrate to AWS if needed without rewriting code.
How do access policies work?+
Buckets accept standard Postgres RLS policies. For example: user_id = auth.uid() evaluated against the file path. Consistent with your database schema, testable with pg_prove.
How much do image transformations cost?+
Included in the Pro plan, with permanent edge caching per unique URL. Each unique transformation is computed only once, then served directly from all 12 POPs until cache invalidation.
Can we stream large files (video, ML model weights)?+
Yes. Native HTTP Range requests, HTTP/3 with 0-RTT, and no strict file size limit (Enterprise: up to 5TB per object). ML weights load via streaming without needing a full prior download.
What about GDPR and EU data residency?+
You pin each bucket to a specific region. Paris is available by default. Data, edge caches, and backups stay strictly within the chosen region. CloudTrail-style audit logs exportable to S3.
How do I export all my data?+
Via aura storage export bucket:* --format s3-compatible. Generates a consistent tar.zst archive including metadata and permissions. Compatible with any S3 backend.
STORAGE IN 2 COMMANDS

One bucket. Twelve regions. One single URL.

Zero CDN configuration. Zero image transformation lambdas. Zero surprise egress fees.

No credit card required · 500 MB free · 50,000 MAU