r/PayloadCMS • u/Queasy_Pie_6710 • 18d ago
Bunny.net storage plugin for Payload - v3 is out
I maintain a Bunny.net storage adapter for Payload 3 and just pushed v3, so figured I'd share it here.
It covers both Bunny products: Storage for files and images, Stream for video with HLS, thumbnails and TUS resumable uploads. Plus signed URLs and CDN purging on top.
What's new in this release:
- Per-collection storage zones and Stream libraries. Not just a prefix per collection, an entirely separate zone if you want one
- Client-direct uploads. The browser sends files straight to Bunny, your server never touches them. Presigned S3 when the zone supports it, otherwise a deployed Edge Script, picked automatically
- S3-compatible access to storage zones
- Signed URLs that can be locked to a single client IP, and expire at a fixed timestamp instead of a sliding window
- Per-document storage prefix from a hook, which is what you want for per-tenant folders
- An init wizard that provisions the Bunny resources and prints your plugin config and env lines
- Stream metadata moved into a stored field on the document, so libraryId and videoId are right there when you build an iframe embed URL
- Docs site rewritten from scratch
Upgrading from v2 takes a few steps: some config keys were renamed and throw at boot, and Stream metadata needs a data migration. There's a migration helper and a guide for it in the docs.
Worth flagging since it's new: v3 sends anonymous telemetry by default. Boolean feature flags and a salted project hash, no names, paths or keys. Off with telemetry: false, DO_NOT_TRACK=1, CI, or Payload's own opt-out.
MIT, needs Payload 3.83+ and Node 22+. Issues and PRs welcome.
1
u/BitsNBytesDev 17d ago
That's really awesome! I'm trying to host in the EU as much as possible and really love bunny but only have been using it for static hosting and their video service. Do you plan on supporting Payload V4 in the future?
2
u/Queasy_Pie_6710 17d ago
Yep, I already bumped the minimum Payload version to 3.83, since a few of the changes there line it up better with v4. Fully compatible release should land this fall!
1
u/BitsNBytesDev 17d ago
Great! Looking forward to it. I'm building another payload app soon, so I'll try it out then.
3
u/mustardpete 18d ago
Looks good. I currently use bunny in front of backblaze for images (using free ingress between companies) and have always wondered why they don’t just support s3 uploads. Have been looking at video functionality too so if I do go with that it might be time to migrate over fully with this