Skip to content
Temp edited this page Feb 11, 2026 · 9 revisions

Frequently Asked Questions

Common questions about R2-Manager-Worker.

General Questions

What is R2-Manager-Worker?

R2-Manager-Worker is a web application for managing Cloudflare R2 buckets with enterprise-grade authentication. It provides features that aren't available in the Cloudflare dashboard, like bulk operations, signed URLs for file sharing, and a modern user interface.

Why should I use this instead of the Cloudflare dashboard?

The Cloudflare dashboard has limited R2 management capabilities. R2-Manager-Worker provides:

  • Bulk bucket deletion with progress tracking (v1.3.0)
  • Bulk file operations (download multiple files as ZIP)
  • File move/copy between buckets
  • Signed URL generation for easy file sharing
  • Modern, responsive UI
  • GitHub SSO authentication
  • Self-hosted control over your data

Is it free to use?

Yes! The application itself is open-source (MIT license). You only pay for Cloudflare services:

  • R2 storage and operations (free tier available)
  • Workers execution (generous free tier)

See Cloudflare pricing for details.

Setup & Deployment

Do I need a domain to use this?

No, you can use the free workers.dev subdomain provided by Cloudflare. However, a custom domain provides:

  • Professional appearance
  • Better control over routing
  • Custom branding opportunities

How long does setup take?

First-time setup takes approximately 30-45 minutes:

  • 10 minutes: Clone and install dependencies
  • 15 minutes: Configure Cloudflare resources
  • 10 minutes: Set up Cloudflare Access authentication
  • 5 minutes: Deploy to production

Subsequent deployments take < 2 minutes.

Can I deploy to multiple environments?

Yes! You can have separate deployments for:

  • Development (using workers.dev)
  • Staging (using a staging subdomain)
  • Production (using your main domain)

Each environment needs its own:

  • Worker deployment
  • R2 bucket
  • Cloudflare Access application

What Cloudflare plan do I need?

The Free plan works great for most use cases! However, file upload limits vary by plan:

  • Free/Pro: 100MB per file
  • Business: 200MB per file
  • Enterprise: 500MB per file

Security

Is my data secure?

Yes! Security features include:

  • Zero Trust authentication - All requests authenticated by Cloudflare Access
  • HTTPS only - All traffic encrypted via TLS
  • JWT validation - Tokens verified on every API call
  • Upload verification - MD5 checksum verification ensures data integrity
  • Signed URLs - Download links use HMAC signatures
  • No stored credentials - No passwords stored anywhere

Who can access my R2 buckets?

By default, only users authenticated via your configured identity provider (GitHub) can access the application. You can restrict this further by:

  • Limiting to specific GitHub organizations
  • Allowing only specific email addresses
  • Using group-based policies

Can I use a different identity provider besides GitHub?

Yes! Cloudflare Access supports many identity providers:

  • GitHub (configured by default)
  • Google
  • Azure AD
  • Okta
  • OneLogin
  • Generic SAML
  • Generic OIDC

Update your Cloudflare Access configuration to use a different provider.

Is authentication required for all endpoints?

Most endpoints require authentication. The following are public:

  • /site.webmanifest - PWA manifest
  • /favicon.ico - Favicon
  • Static assets (with Bypass policy)
  • Signed file downloads (signature validated)

Usage

What file types can I upload?

The application supports a wide range of file types commonly used in R2 buckets:

  • Documents (PDF, Word, Excel, PowerPoint, TXT, Markdown, CSV)
  • Images (JPG, PNG, GIF, WebP, AVIF, HEIC, SVG, BMP, PSD)
  • Videos (MP4, MOV, WebM, AVI, MKV, WMV, FLV, MPEG, 3GP, OGG)
  • Audio (MP3, WAV, FLAC, AAC, M4A, OGG, OPUS)
  • Archives (ZIP, RAR, 7Z, TAR, GZ)
  • Fonts (TTF, OTF, WOFF, WOFF2, EOT)
  • Code files (JS, TS, Python, Java, CSS, HTML, JSON, YAML, SQL, etc.)
  • Databases (SQLite, Parquet)
  • And many more!

See Development Guide - File Type Categories for complete list with size limits.

What's the maximum file size?

The application supports up to 500MB per file, but Cloudflare enforces plan-based limits:

  • Free/Pro: 100MB maximum
  • Business: 200MB maximum
  • Enterprise: 500MB maximum

Files are automatically chunked in 10MB pieces for reliability.

Can I upload folders?

Not directly through the UI. However, you can:

  1. ZIP the folder locally
  2. Upload the ZIP file
  3. Extract on your end when needed

Or use the Cloudflare API or tools like rclone for folder uploads.

How do I share files with others?

Use the Signed URL feature:

  1. Hover over a file (Grid view) or click the link icon
  2. Or click "Copy Link" button (List view)
  3. The signed URL is copied to your clipboard
  4. Share the link with anyone who needs access

The URL includes a signature that validates the download request without requiring authentication.

Can I rename files?

Yes! File renaming was added in v1.0.2. Right-click on any file and select "Rename" from the context menu.

Can I delete multiple buckets at once? (v1.3.0+)

Yes! Bulk bucket deletion is available:

  1. Select buckets by clicking the checkbox in the top-left corner of each bucket card
  2. Click "Delete Selected" in the bulk action toolbar
  3. Review the confirmation modal showing all buckets and total file counts
  4. Confirm deletion and track progress with the progress bar

All files within each bucket are automatically deleted (force delete) before the bucket is removed.

What happens if upload fails?

The application includes automatic retry logic:

  • Failed chunks are retried up to 3 times
  • If upload fails completely, you can retry manually
  • Partial uploads are cleaned up automatically

Performance

Why is bucket renaming slow?

Bucket renaming isn't a native R2 operation. The application:

  1. Creates a new bucket
  2. Copies all objects to the new bucket
  3. Deletes the old bucket

For large buckets, this can take several minutes. Rate limiting delays are built-in to avoid API throttling.

Why is force delete taking so long?

Force delete iterates through all objects in the bucket and deletes them individually. For buckets with thousands of objects:

  • 100 objects ≈ 30 seconds
  • 1,000 objects ≈ 5 minutes
  • 10,000 objects ≈ 50 minutes

The Worker includes 500ms delays between batches to respect API rate limits.

How long does bulk bucket deletion take? (v1.3.0+)

Bulk deletion processes buckets sequentially (one at a time), not in parallel:

  • Empty bucket ≈ 5-10 seconds
  • Bucket with 100 files ≈ 30-60 seconds
  • Bucket with 1,000 files ≈ 5-8 minutes

Progress is displayed in real-time with a progress bar showing "Deleting bucket X of Y". If one bucket fails, the operation continues with the remaining buckets.

Can I speed up operations?

Not significantly - rate limiting is necessary to avoid hitting Cloudflare API limits. For very large buckets, consider:

  • Using the Cloudflare API directly
  • Using tools like rclone for bulk operations
  • Breaking operations into smaller batches

User Interface

How do I change the theme (light/dark mode)?

Click the theme toggle button in the header (next to the Logout button) to cycle through:

  • System - Automatically follows your OS/browser theme preference
  • Light - Force light mode
  • Dark - Force dark mode

Your preference is saved and persists across sessions.

Does the theme change automatically with my system settings?

Yes! When in "System" mode (the default), the application automatically detects and follows your operating system's theme preference. If you change your OS theme while the app is open, it updates instantly.

Can I customize the theme colors?

Yes! The theme system uses CSS custom properties (variables) that can be customized:

  1. Fork the repository
  2. Edit src/styles/themes.css
  3. Modify color values for light/dark themes
  4. Deploy your customized version

See the Development Guide for technical details.

Development

Can I contribute to the project?

Absolutely! Contributions are welcome:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Open a Pull Request

See Contributing Guidelines for details.

Can I customize the UI?

Yes! The UI is built with vanilla CSS and React. You can:

  • Edit styles in src/app.css
  • Modify components in src/
  • Add custom branding
  • Change colors and layout

Custom branding via environment variables is on the roadmap.

Can I add features?

Definitely! The codebase is well-structured for extensions:

  • Add new API endpoints in worker/index.ts
  • Add UI components in src/
  • Extend the API client in src/services/api.ts

Check the Development Guide for details.

Troubleshooting

Why can't I authenticate?

Common causes:

  • TEAM_DOMAIN doesn't include https://
  • POLICY_AUD doesn't match Application Audience Tag
  • GitHub account not allowed in Access policy
  • JWT cookie not being set

See Troubleshooting for detailed solutions.

Why can't I see my bucket?

Check that:

  • Bucket name in wrangler.toml matches exactly (case-sensitive)
  • ACCOUNT_ID secret is correct
  • API token has R2 Storage permissions
  • Bucket actually exists: npx wrangler r2 bucket list

Where can I get help?

Billing & Costs

How much does it cost to run?

Costs depend on your usage. Typical costs for small-to-medium usage:

Workers:

  • Free tier: 100,000 requests/day
  • Beyond: $0.50 per million requests

R2 Storage:

  • Free tier: 10GB storage
  • Beyond: $0.015 per GB/month

Example:

  • 1,000 daily users
  • 10GB storage
  • = Likely $0/month on free tier

Are there any hidden costs?

No hidden costs! All pricing is transparent:

  • Workers and R2 have generous free tiers
  • No data transfer fees between Cloudflare services
  • No fees for API requests within Cloudflare network

See Cloudflare pricing for details.

Comparison

How does this compare to AWS S3 management tools?

Similarities:

  • Bucket and object management
  • Web-based interface
  • API integration

Differences:

  • R2-Manager-Worker: Self-hosted, edge deployment, Zero Trust auth
  • AWS Console: Hosted by AWS, integrated with AWS ecosystem
  • R2 advantages: No egress fees, global performance, simpler auth

Can I use this with AWS S3?

Not directly. The application is built specifically for Cloudflare R2. However:

  • R2 is S3-compatible
  • Could potentially be adapted for S3
  • Would require changes to authentication and API calls

Future Plans

What features are coming next?

See the Roadmap for planned features:

  • Audit logging
  • Role-based access control
  • File versioning
  • Offline upload queue
  • Custom branding

Can I request a feature?

Yes! Feature requests are welcome:


Have a question not answered here? Ask in Discussions or open an issue.

R2 Bucket Manager Wiki

Getting Started

Core Features

Development

Security & Authentication

Support & Resources

External Links

Clone this wiki locally