@seshuk/payload-storage-bunny stores and serves your Payload media on bunny.net. It wraps @payloadcms/plugin-cloud-storage, so uploads from your collections go straight to Bunny Storage and Stream and are delivered from Bunny’s global CDN — wired into the admin panel with no extra glue.
Key features
- Bunny Storage — images, documents, and any non-video file.
- Bunny Stream — videos and audio with adaptive HLS/MP4 playback, thumbnails, and TUS resumable uploads.
- Client uploads — send file bytes straight from the browser to Bunny, bypassing serverless body-size limits.
- Signed URLs — time-limited, geo-restricted access to files and videos.
- Cache purging — invalidate the CDN automatically on upload and delete.
- Collection overrides — keep one set of plugin options and tune every option per collection.
Requirements
Payload 4 and Node.js 24.15 or later. For Payload 3, use v3 of the plugin. See the upgrade guide to move from v3 to v4.Where to go next
Setup wizard
Run one command — it provisions your Bunny resources and prints ready-to-paste options.
Quick start
Install the plugin and point a collection at Bunny.
Configuration
Every option explained, from API keys to per-collection overrides.
Stream
Serve video with HLS, MP4 fallback, and resumable TUS uploads.
Storage
Store images and documents, delivered fast from the Bunny CDN.
Upgrade guide
Upgrade between major plugin versions — option changes and the stored-data migration.
Examples
Copy-ready options for common setups and real-world patterns.