Repolode
vikiboss

vikiboss/r2-web

A lightweight, pure-browser file manager for Cloudflare R2 buckets, with chunked uploads, previews, and image-hosting helpers.

Open-source alternative to:Cyberduck

Stars
484
Forks
97
Open issues
0
Last commit
last month

What is it?

R2 Web is a web-based file manager for Cloudflare R2 object storage. It runs entirely in the browser: the page calls the R2 S3 API directly, so files and credentials do not pass through a third-party backend. Credentials are kept in browser localStorage.

The interface covers directory browsing with pagination and lazy-loaded thumbnails, sorting, batch copy, move and delete, and renaming. Large files are split into chunks and uploaded concurrently, with pause and resume, live speed and progress, and a per-file limit of 1 TiB. Drag-and-drop and paste uploads are supported, along with filename templates and local WebAssembly image compression for JPEG, PNG, WebP and AVIF.

The project is a static site with no build step, so the src directory can be deployed to Vercel, Netlify, Cloudflare Pages, or served locally. It also offers PWA support, dark mode, and several interface languages.

Key features

  • 01Browser-direct access to the R2 S3 API with no intermediate server
  • 02Chunked concurrent uploads with pause, resume and progress display
  • 03Batch copy, move, rename and recursive delete
  • 04Filename templates with hash, date, timestamp and UUID placeholders
  • 05Local WebAssembly image compression, with optional Tinify
  • 06Preview and share links as direct URL, QR code, Markdown or HTML

Use cases

  • Managing large numbers of files in an R2 bucket without installing a desktop client
  • Using R2 as a personal image host with automatic compression and Markdown links
  • Deploying a private, self-hosted file manager for a single R2 bucket

Quick start

  1. 1

    Configure the R2 bucket CORS policy in the Cloudflare dashboard

  2. 2

    Create an R2 API Token scoped to the target bucket and enter credentials at r2.viki.moe

  3. 3

    Clone the repository

    git clone https://github.com/vikiboss/r2-web.git
  4. 4

    Install dependencies and serve the src directory locally

    pnpm install && npx serve src

Things to know

  • Requires configuring R2 bucket CORS and creating an R2 API token before it works.
  • Image compression via Tinify sends images to a third-party service.
  • Single files are limited to 1 TiB, and older browsers such as IE are not supported.

Topics

FAQ

What is r2-web?
A lightweight, pure-browser file manager for Cloudflare R2 buckets, with chunked uploads, previews, and image-hosting helpers. R2 Web is a web-based file manager for Cloudflare R2 object storage. It runs entirely in the browser: the page calls the R2 S3 API directly, so files and credentials do not pass through a third-party backend. Credentials are kept in browser localStorage.
Is r2-web free to use? What license does it have?
r2-web is open source under the MIT license. Check the license terms before using it in commercial products.
Is r2-web still maintained?
Updated within 6 months. The last commit to r2-web was on Sep 15, 2026.
What can I use r2-web for?
Managing large numbers of files in an R2 bucket without installing a desktop client Using R2 as a personal image host with automatic compression and Markdown links Deploying a private, self-hosted file manager for a single R2 bucket
How do I install r2-web?
Configure the R2 bucket CORS policy in the Cloudflare dashboard Create an R2 API Token scoped to the target bucket and enter credentials at r2.viki.moe Clone the repository: git clone https://github.com/vikiboss/r2-web.git Install dependencies and serve the src directory locally: pnpm install && npx serve src
Where can I get r2-web?
The source code and installation instructions are on GitHub: https://github.com/vikiboss/r2-web

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects