Un bucket S3,
en mieux.
API S3-compatible, transformations d'image à la volée, URLs signées par défaut, CDN 12 régions. Scan antivirus et uploads reprenables inclus.
const { data, error } = await aura.storage.from('avatars').upload(`${user.id}/${file.name}`, file, {cacheControl: 'max-age=31536000, immutable',contentType: file.type,upsert: true,})// Resumable auto si fichier > 6MB · chunks 6MB, reprise auto
Tout ce dont un storage moderne a besoin
API S3-compatible
SDK AWS S3, mc (Minio), rclone fonctionnent sans modification. Vos scripts Terraform/Ansible aussi.
Transformations à la volée
Resize, format (WebP/AVIF/JPEG), quality, crop, rotate, blur. Cache 12 régions avec invalidation sous 200ms.
URLs signées par défaut
HMAC-SHA256, nonce anti-replay, TTL explicite, téléchargement forcé. Aucune URL publique accidentelle.
Uploads reprenables
Chunks de 6MB avec reprise automatique, résistance aux coupures réseau, progression granulaire côté client.
Scan antivirus automatique
ClamAV + signatures propriétaires. Les fichiers infectés sont mis en quarantaine, notification webhook immédiate.
CDN 12 régions
Edge cache en Europe, USA, Asie-Pacifique, Amérique latine. TLS 1.3, HTTP/3, purge programmatique par tag.
De la source au rendu, en une URL
Les transformations sont des paramètres d'URL, pas une API séparée. Résultat : cache edge immuable par transformation unique, compatible avec n'importe quel framework.
/object/public/avatars/cover.jpg/object/public/avatars/cover.jpg?width=240&format=avif&quality=80CDN premier, origin en secours
Aurabase · Supabase · GCS
Questions fréquentes
Quelle est la différence avec AWS S3 + CloudFront ?+
Comment fonctionnent les policies d'accès ?+
user_id = auth.uid() sur le path du fichier. Cohérent avec votre schéma, testable avec pg_prove.Que coûtent les transformations d'image ?+
Peut-on streamer des gros fichiers (vidéo, ML weights) ?+
Et le GDPR / résidence EU ?+
Comment exporter toutes mes données ?+
aura storage export bucket:* --format s3-compatible. Archive tar.zst cohérente avec métadonnées + permissions. Compatible avec n'importe quel backend S3.Un bucket. Douze régions. Une URL.
Aucune configuration CDN. Aucune lambda de transformation. Aucune facture d'egress surprise.