S3V: S3 GUIクライアント
(s3v.d3fau1t.net)S3V: S3、R2、MinIO... 散在するバケットを1か所で管理するGUIツールを作りました。
運用するサービスが増えるにつれて、AWS S3、Cloudflare R2、MinIO などさまざまなストレージを用途に応じて併用するようになりました。
毎回ファイル管理のために繰り返し行う s3 関連コードの作成やコンソール作業にも飽きてしまい、
1つのウィンドウで複数のバケットを同時に扱えないだろうか? という考えから作業を始めました。
CyberDuck など、ほかのクライアントも探せばあるにはあるのですが、
タブ方式の UI や、異なるバケットを開いてファイルをコピーする機能のようなものは見つけられませんでした。
個人的な必要からあれこれ機能を追加していくうちに、ある程度形になったと思っています。
結果的には S3 SDK をうまく包んだラッパーに過ぎませんが、誰かには必要かもしれないと思い投稿しました。
ありがとうございます。
主な機能
- マルチプロファイル & タブ UI
- 複数ストレージの接続情報をプロファイルとして保存し、ブラウザのようにタブごとに開けます。
- ファイル操作
- アップロード、ダウンロード、移動、コピー、名前変更など、基本的なファイル管理機能を提供します。
- Presigned URL の生成
- ファイル共有用の一時リンクを生成します。(デフォルト有効期限 1時間)
- デュアルパネルビュー
- 2つの異なるストレージ(プロファイル)を並べて表示し、比較したり、パネル間でファイルを直接やり取りしたりできます。
- ドラッグ&ドロップ
- OS のローカル環境とアプリ間でドラッグ&ドロップをサポートし、直感的なファイル転送が可能です。
- 現時点では残念ながら、Windows 環境では OS -> S3V の一方向のみ対応しています。
使用技術
- Tauri v2 (w/ wry)
- SvelteKit
- TailwindCSS
- aws-sdk-s3
7件のコメント
Cyberduck には side-by-side(dual-pane)表示はありませんが、複数ウィンドウでファイルを移動できます。[1] しかも、サーバーの種類によっては Intermediate download なしでコピーすることも可能です。[2]
なるほど、訂正していただきありがとうございます。
お、いいね
ご関心をお寄せいただきありがとうございます。不要な作業を最小限に抑えようとする過程で作られたものです。
お使いいただき、改善点や必要な内容をご提案いただけると大変ありがたく思います。
Tauriでどのように作ったのか見てみましょう。
少し前にご紹介いただいたrhwpは、便利に使わせていただいています。
余談ですが、数式入力機に関連する作業は予定されていますか? 個人的にもこの部分に貢献したいのですが、ハングル文書特有の数式フォーマットが作業を難しくしているように思います。
今週から、数式レンダリングをもう少しきれいに表示し、LaTeX と互換性を持たせる機能の実装をタスクとして進めています。数式入力をデュアルモードで実装する方法に挑戦してみるつもりです。Issue として登録して進めていますので、コメントを付けていただければ実装時の参考にします。