Branch Diff Visualizer is a desktop Electron app for comparing two Git branches and exploring the diff through visual metrics.
- Compare branches in two modes:
merge-base: compare the merge base to the compare branchtip-to-tip: compare branch tips directly
- Choose compare source:
working tree (saved changes): include saved local edits on the checked out compare branchbranch tip (committed): use committed state only
- Auto-refresh analysis when repository changes are detected
- Visualize diff impact with charts and panels (status, churn, directories, extensions, histograms)
- Configure ignore patterns to filter out noise
- Save settings per repository (branch selection, mode, panel layout, orientation, ignore patterns)
- Configure global app settings (theme + reopen last repository on launch)
- Export analysis results to JSON
- Electron + electron-vite
- React
- Recharts
- simple-git
- Node.js 20+
- npm
- Git CLI available on your machine (
gitin PATH)
npm install
npm run devIn the app:
- Click the folder button and choose a local Git repository.
- Select base and compare branches.
- Choose comparison mode (
Merge BaseorTip to Tip). - Tune ignore patterns as needed.
- Optionally export analysis via
Export JSON.
working-treecompare source requires the currently checked out branch to match the selected compare branch.working-treeincludes saved local edits, whilebranch-tiponly reflects committed history.- Ignore patterns are applied after diff collection and are persisted per repository.
npm run dev: run the app in development modenpm run build: build app code intoout/npm run dist: create distributables for configured platformsnpm run dist:mac: create macOS distributables (.dmg,.zip)npm run dist:mac:app: create an unpacked macOS.appbundlenpm run preview: preview a built appnpm run test: run testsnpm run test:watch: run tests in watch modenpm run lint: run lint checksnpm run format: run Prettier
npm run dist:mac:appThe app bundle is generated under dist/, typically:
- Apple Silicon:
dist/mac-arm64/Branch Diff Visualizer.app - Intel:
dist/mac/Branch Diff Visualizer.app(ordist/mac-x64/)
See CONTRIBUTING.md.
MIT, see LICENSE.