WebDiff — テキスト差分ツール

2026-06-16

成果物

概要

2つのテキストを貼り付けて差分を視覚的に確認できる Web ツールです。Githubが出しているコンポーネントがあることを最近知ったので、GitHub Primer の UI コンポーネントを採用しました。

簡単ですぐ使えるやつにしました。

技術スタック

役割ライブラリ / ツール
ビルドツールVite 6
UI フレームワークReact 18 + TypeScript
UI コンポーネントGitHub Primer (@primer/react)
差分エンジンdiff (npm)
ホスティングCloudflare Pages

差分の計算には npm の diff パッケージを使っています。diffLines() で行単位の差分を取得し、追加・削除・変更なしの 3 種類の Change オブジェクトとして受け取ります。それを Split View と Unified View それぞれのコンポーネントに渡して描画する、というシンプルな構成です。

Cloudflare Pages へのデプロイ

リポジトリを Cloudflare Pages に接続するだけで動きます。設定値はこちら。

設定項目
ビルドコマンドnpm run build
出力ディレクトリdist
Node.js バージョン18 以上

GitHub にプッシュするたびに自動でビルド・デプロイされるので運用がらく。無料。