📂

ファイルツリーの可視化ツールを作った

2024/09/08に公開

ソースコード

https://github.com/jiikko/filetree-meta-manager

「WEBアプリケーション」と「CLIツール」がセットになっています。WEBアプリケーションはご自身でホスティングしてください。

このツールは「WEB アプリケーション」「CLI ツール」の 2 つのコンポーネントから構成されています。「CLI ツール」はファイルツリーの収集および 「WEB アプリケーション」への送信を行います。「WEB アプリケーション」は、収集されたファイルツリーの閲覧を提供します。

詳細は、READMEに書いています。

画面のスクショは以下の通りです。

開発の背景

複数のHDDを保有しており、時間が経つと中身やスナップショットのタイミングが不明になることがありました。付箋で管理するには限界があり、ファイルツリーをWEBで簡単に確認できれば便利だと考えました。

「WEBアプリケーション」はRailsで、「CLIツール」はgolangで書いています。

余談

  • 「CLIツール」もRubyで書きたかったのですが、HDDをマウントするPCにもRubyをインストールするのがめんどくさかったのでgolangで書くことにしました。
  • READMEにはCloud Runを使うように案内していますが、GCPにロックインされるような要素はないので、どこでも動くはずです。また、Cloud Runに使っている理由はランニングコストを下げたかったからです。DBにはServerless Auroraを使うとさらに削減できそう。
  • ファイルのハッシュも送信して重複ファイルの検出もしたかったのですが、自分が管理対象のファイルが大きく、計算に時間がかかることがわかったのでハッシュの計算はやめました。

「CLIツール」をダウンロードするshellスクリプトを使うと配布が簡単です。
https://github.com/jiikko/dotfiles/blob/master/bin/download_filetree_dumper

以上。

Discussion