Repolode
vikiboss

vikiboss/r2-web

チャンクアップロードやプレビュー、画像ホスティング支援機能を備えた、Cloudflare R2バケット向けの軽量なブラウザ完結型ファイルマネージャー。

代替できる製品:Cyberduck

スター
484
フォーク
97
未解決の Issue
0
最終コミット
先月

これは何?

R2 Webは、Cloudflare R2オブジェクトストレージ向けのWebベースのファイルマネージャーです。すべてブラウザ内で動作し、ページからR2 S3 APIを直接呼び出すため、ファイルや認証情報がサードパーティのバックエンドを経由することはありません。認証情報はブラウザのlocalStorageに保存されます。

ページネーションやサムネイルの遅延読み込みに対応したディレクトリ閲覧、並べ替え、複数ファイルのコピー・移動・削除、名前変更ができます。大容量ファイルはチャンクに分割して並列アップロードでき、一時停止・再開、リアルタイムの速度と進捗表示に対応しています。1ファイルあたりの上限は1 TiBです。ドラッグ&ドロップや貼り付けによるアップロードのほか、ファイル名テンプレートや、JPEG、PNG、WebP、AVIFに対応したローカルでのWebAssembly画像圧縮も利用できます。

ビルド工程のない静的サイトなので、srcディレクトリをVercel、Netlify、Cloudflare Pagesにデプロイしたり、ローカルで配信したりできます。PWA対応、ダークモード、複数のインターフェース言語も備えています。

主な機能

  • 01中継サーバーを介さず、ブラウザからR2 S3 APIに直接アクセス
  • 02一時停止・再開と進捗表示に対応した、チャンク分割による並列アップロード
  • 03複数ファイルのコピー・移動・名前変更と再帰的な削除
  • 04ハッシュ、日付、タイムスタンプ、UUIDのプレースホルダーを使えるファイル名テンプレート
  • 05ローカルでのWebAssembly画像圧縮(Tinifyもオプションで利用可能)
  • 06プレビューと、直接URL・QRコード・Markdown・HTML形式での共有リンク生成

ユースケース

  • デスクトップクライアントをインストールせずに、R2バケット内の大量のファイルを管理する
  • 自動圧縮やMarkdownリンクに対応した個人用画像ホスティングとしてR2を使う
  • 単一のR2バケット向けに、非公開のセルフホスト型ファイルマネージャーをデプロイする

クイックスタート

  1. 1

    Cloudflare ダッシュボードで R2 バケットの CORS ポリシーを設定する

  2. 2

    対象のバケットにスコープを限定した R2 API Token を作成し、r2.viki.moe で認証情報を入力する

  3. 3

    リポジトリをクローンする

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

    依存関係をインストールし、src ディレクトリをローカルで配信する

    pnpm install && npx serve src

使う前に知っておきたいこと

  • 動作させるには、事前に R2 バケットの CORS 設定と R2 API Token の作成が必要です。
  • Tinify による画像圧縮では、画像がサードパーティのサービスに送信されます。
  • 単一ファイルのサイズ上限は 1 TiB です。また、IE などの古いブラウザーはサポートされていません。

トピック

よくある質問

r2-web とは?
チャンクアップロードやプレビュー、画像ホスティング支援機能を備えた、Cloudflare R2バケット向けの軽量なブラウザ完結型ファイルマネージャー。 R2 Webは、Cloudflare R2オブジェクトストレージ向けのWebベースのファイルマネージャーです。すべてブラウザ内で動作し、ページからR2 S3 APIを直接呼び出すため、ファイルや認証情報がサードパーティのバックエンドを経由することはありません。認証情報はブラウザのlocalStorageに保存されます。
r2-web は無料で使えますか?ライセンスは?
r2-web は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
r2-web は今もメンテナンスされていますか?
半年以内に更新あり。r2-web の最終コミットは 2026年9月15日 です。
r2-web は何に使えますか?
デスクトップクライアントをインストールせずに、R2バケット内の大量のファイルを管理する 自動圧縮やMarkdownリンクに対応した個人用画像ホスティングとしてR2を使う 単一のR2バケット向けに、非公開のセルフホスト型ファイルマネージャーをデプロイする
r2-web のインストール方法は?
Cloudflare ダッシュボードで R2 バケットの CORS ポリシーを設定する 対象のバケットにスコープを限定した R2 API Token を作成し、r2.viki.moe で認証情報を入力する リポジトリをクローンする: git clone https://github.com/vikiboss/r2-web.git 依存関係をインストールし、src ディレクトリをローカルで配信する: pnpm install && npx serve src
r2-web はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/vikiboss/r2-web

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト