Supabasefabrizio,inianAnnouncement
Supabase Storage v2: Image resizing and Smart CDN
Summary
Supabase Storage introduces image resizing, webhooks, and a Smart CDN, positioning them as components of an on-demand image delivery system. Resizing uses imgproxy and supports width, height, and contain, cover, or fill modes through JavaScript clients or direct Storage API requests; images are not enlarged beyond their original dimensions, and aspect ratio is preserved by default. The Smart CDN stores resized results using cache keys based on an Etag, tenant ID, bucket, and image name, while webhook-driven metadata updates propagate invalidations globally within about 60 seconds. Image Resizing is beta for Pro and Enterprise customers, with 100 transformed images per project at no additional cost and $5 per additional 1,000; self-hosting is free.
Context
Supabase developers previously used client-side compression or external providers because Supabase Storage did not provide image resizing. Resized images can be expensive to generate, and the existing one-hour cache could continue serving stale or deleted images until expiration.
Approach / What changed
The release adds on-demand resizing through imgproxy, JavaScript client transformations, and direct Storage API parameters. A Smart CDN uses globally distributed caching, metadata in a global KV store, and cache keys containing an Etag, tenant ID, bucket name, and image name. Storage webhooks notify a cache manager about object changes so updated metadata causes cache invalidation within about 60 seconds.
Takeaways
Image resizing supports contain, cover, and fill modes, follows CSS object-fit conventions, and never enlarges an image beyond its original dimensions.
The image resizer and Storage API run as separate containers so they can scale independently for different resize and read workloads.
Storage webhooks include object creation, update, deletion, move, copy, and metadata-update events; platform exposure was described as forthcoming, while self-hosted users could enable them with environment variables.
Source and freshness
- Source
- supabase.com
- Published
- Added to Yomu
- Last updated
Summaries are generated from the original by a language model. Check the original before relying on it.
Keep reading
Related reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
The best engineering reads, once a week
One useful email. Unsubscribe anytime.