diffはエンジニアだけのものじゃない — 5つの比較モードを1アプリに詰め込んだ「Diff Pro Max」

diffツールは誰のためのものか

「diff」という言葉を聞くと、多くの人はエンジニアが使うコード比較ツールを思い浮かべます。

実際、GitやVS Codeの差分表示など、開発現場では当たり前のように使われています。

しかし、「2つのファイルを比較したい」という需要は、エンジニアだけのものではありません。

デザイナーはロゴの前後を見比べたいし、映像クリエイターは編集前後の動画を確認したい。

ライターは原稿の改訂履歴を追いたい。

そんな「比較」の場面は、職種を問わず日常的に発生しています。

Diff Pro Maxは、その「比較」を5つのフォーマットで実現するアプリです。

テキスト・画像・動画・音声・フォルダという異なる種類のファイルを、1つのアプリで比較できます。

エンジニアだけでなく、クリエイターやビジネスパーソンにも使えるツールとして設計しました。

この記事では、Diff Pro Maxの全機能と、初めてのアプリ開発で直面した課題、そしてTauri v2への移行までの開発ストーリーをお伝えします。

Diff Pro Maxとは — 5つの比較モードを1アプリで

Diff Pro Maxは、5つの異なる比較モードを搭載したデスクトップアプリです。

macOSとWindowsに対応しており、Mac App StoreとMicrosoft Storeからダウンロードできます。

対応しているのは、テキスト、画像、動画、音声、フォルダの5種類です。

それぞれのモードは独立して機能するだけでなく、Change Review機能によって比較履歴を自動保存し、後から任意のバージョン同士を比較できます。

Gitのようなバージョン管理システムを使わない人でも、直感的に「あのときのファイルと今のファイル、何が違うんだっけ?」を確認できる仕組みです。

技術的にはTauri v2(Rust + Vue 3)で構築されており、軽量で高速なネイティブアプリとして動作します。

ダークモード・ライトモード切り替え、日英対応、ドラッグ&ドロップ操作など、使い勝手にもこだわりました。

テキスト比較 — コードもドキュメントも

テキスト比較モードは、Diff Pro Maxの中で最も多機能なモードです。

コードの差分を確認するだけでなく、文書の改訂履歴を追うこともできます。

表示形式はHunk ViewとSplit Viewの2種類から選べ、シンタックスハイライトにも対応しています。

特徴的なのは、Vimモードを搭載している点です。

Vimユーザーにとって、マウスを使わずにキーボードだけで操作できるのは大きなメリットです。

また、空白や大文字小文字を無視する設定、正規表現検索、変更統計の表示など、プロの開発者が求める機能を一通り揃えています。

エンジニアだけでなく、ライターや編集者が原稿の改訂箇所を確認する際にも便利です。

どの段落が追加され、どの表現が削除されたかが一目でわかります。

画像比較 — デザインレビューを一瞬で

画像比較モードは、JPG、PNG、GIF、BMP、SVG、WebP、ICOの7形式に対応しています。

デザインカンプの前後比較や、ロゴの微調整確認など、視覚的な差分を把握したい場面で役立ちます。

表示形式はSplit View(左右分割)とOverlay View(重ね合わせ)の2種類です。

Overlay Viewでは透明度スライダーを使って、2つの画像を重ねながら差分を確認できます。

わずかな色味の変化や、ピクセル単位のズレもすぐに気づけます。

ズーム同期機能も搭載しており、片方の画像を拡大すると、もう片方も同じ倍率・位置で表示されます。

細部まで正確に比較したいデザイナーにとって、ストレスのない体験を提供します。

動画比較 — フレーム単位の差分を可視化

動画比較モードは、MP4、WebM、OGG、MOV、AVI、MKVの6形式に対応しています。

映像制作者が編集前後の動画を確認したり、エンコード設定の違いによる画質変化をチェックしたりする際に使えます。

サイドバイサイドで2つの動画を並べて再生でき、同期再生によってフレーム単位での比較が可能です。

また、メタデータ比較機能により、解像度やビットレート、コーデックなどの情報も一覧で確認できます。

動画編集ソフトの出力結果を比較したり、異なるエンコード設定でどれだけファイルサイズが変わるかを検証したりするのに便利です。

音声比較 — 波形ビジュアライゼーションで聴く差分

音声比較モードは、MP3、WAV、OGG、FLACの4形式に対応しています。

音楽プロデューサーがミックスバージョンを比較したり、ポッドキャスト編集者が編集前後の音声を確認したりする場面を想定しています。

波形ビジュアライゼーションにより、音の変化を視覚的に捉えられます。

A/B同期再生機能を使えば、2つの音声を切り替えながら聴き比べることができ、微妙なEQの違いや音圧の変化も判別しやすくなります。

類似度ゲージも搭載しており、2つの音声がどれだけ似ているかを数値で把握できます。

音楽制作だけでなく、ナレーション収録のテイク比較や、音声ファイルのフォーマット変換前後の品質チェックにも活用できます。

フォルダ比較 — プロジェクト全体を俯瞰する

フォルダ比較モードは、ディレクトリ全体を再帰的に比較し、ファイルのステータス(一致・変更・追加・削除)を検出します。

リスト表示とツリー表示の2種類から選べ、フィルターやソート機能も充実しています。

ソフトウェア開発では、2つのブランチやバージョン間でどのファイルが変更されたかを把握するのに便利です。

また、バックアップの整合性確認や、プロジェクトファイルの移行前後の差分チェックにも使えます。

エンジニア以外でも、例えばWebサイトのファイル一式を更新した際に「どのファイルが変わったか」を確認したり、デザインプロジェクトのアセットフォルダを比較したりする場面で役立ちます。

開発ストーリー — Electron から Tauri v2 への移行

Diff Pro Maxは、私にとって初めてのアプリ開発でした。

きっかけは「自分が欲しかったから」です。

既存のdiffツールはテキストやコード比較に特化しており、画像や動画を比較できるツールはほとんどありませんでした。

自分の制作活動の中で「この2つの動画、何が違うんだっけ?」と思う場面が何度もあり、それなら自分で作ろうと決めました。

TestFlightでのつまずきとTauri v2への移行

最初はElectronで開発を進めていましたが、TestFlightでの動作確認でつまずきました。

アプリが正常に起動せず、原因を突き止めるのに時間がかかりました。

そこで思い切ってTauri v2に移行することを決断しました。

Tauri v2はRustとVue 3を組み合わせた軽量なフレームワークで、ネイティブアプリとしてのパフォーマンスも優れています。

移行には学習コストがかかりましたが、結果として軽量で高速なアプリを実現できました。Electronと比べてメモリ使用量も少なく、起動も速いです。

初めてのアプリ開発で遠回りもしましたが、最終的には自分が納得できるプロダクトになりました。

自分の商品を持つと世界が選択肢になるという経験を、まさに体現したプロジェクトです。

料金プランと対応環境

Diff Pro Maxは無料版とPro版を用意しています。

無料版でもテキスト比較は無制限に使えますが、画像・動画・音声比較は各3回/日、フォルダ比較も3回/日の制限があります。

Pro版は買い切りで、すべての比較機能が無制限に使えます。

さらに、Change Groups機能を無制限に使いたい場合は、Change Review Unlimitedアドオンを追加できます。

こちらも買い切りです。サブスクリプションではないので、一度購入すればずっと使い続けられます。

対応環境はmacOS 15.0以降、Windows 10以降です。

Mac App StoreとMicrosoft Storeからダウンロードできます。

日本語と英語に対応しており、ダークモード・ライトモードの切り替えも可能です。

Diff Pro Maxは、私が開発しているツール群の全体像の一つです。

他にも個人開発のプロダクト事例(Mangekyo)など、複数のプロダクトをリリースしています。

「自分が欲しいもの」を世界に届ける

Diff Pro Maxを作ったのは、自分が欲しかったからです。

既存のツールでは満たされない需要があり、それを埋めるために開発しました。

結果として、エンジニアだけでなく、デザイナーや映像クリエイター、ライターにも使ってもらえるツールになりました。

自分が本当に欲しいものを作れば、同じ課題を抱えている人に届くというのは、商品開発の本質です。

商品開発は「誰かのために」ではなく「自分のために」から始まることが多いです。

自分の制作活動の中で繰り返される行為から商品を見つける方法でも書いたように、自分の制作活動の中で「残るもの」を見つけることが、商品開発の第一歩です。

Diff Pro Maxも、私の制作活動の中で「比較」という行為が何度も繰り返されることに気づいたのが始まりでした。

もしあなたが「こんなツールがあったらいいのに」と思うことがあれば、それは商品開発のチャンスかもしれません。

自分が欲しいものを形にすることで、世界のどこかにいる「同じ課題を抱えている人」に届けることができます。

参考になれば幸いです。

Diff Pro Max ダウンロードはこちらから

https://rkpg.net/diffpromax/index.html