Cloudflare R2 storage manager with Pages and Workers. Free 10 GB storage. Free serverless backend with a limit of 100,000 invocation requests per day. More about pricing
- Upload large files
- Create folders
- Search files
- Image/video/PDF thumbnails
- WebDAV endpoint
- Drag and drop upload
Before starting, you should make sure that
- you have created a Cloudflare account
- your payment method is added
- R2 service is activated and at least one bucket is created
Steps:
- Fork this project and connect your fork with Cloudflare Pages
- Select
Create React App
framework preset - Set
WEBDAV_USERNAME
andWEBDAV_PASSWORD
- (Optional) Set
WEBDAV_PUBLIC_READ
to1
to enable public read
- Select
- After initial deployment, bind your R2 bucket to
BUCKET
variable - Retry deployment in
Deployments
page to apply the changes - (Optional) Add a custom domain
You can also deploy this project using Wrangler CLI:
npm run build
npx wrangler pages deploy build
You can use any client (such as BD File Manager)
that supports the WebDAV protocol to access your files.
Fill the endpoint URL as https://<your-domain.com>/webdav
and use the username and password you set.
However, the standard WebDAV protocol does not support large file (≥128MB) uploads due to the limitation of Cloudflare Workers. You must upload large files through the web interface which supports chunked uploads.
WebDAV related code is based on r2-webdav project by abersheeran.