# Install frontend dependencies
npm install
# Download the difft binary for your platform
cd src-tauri/binaries
./download-difft.sh
cd ../..
# Run in development mode (uses system difft from PATH as fallback)
npx tauri dev
Production Build
# Download difft for your platform (if not already done)
cd src-tauri/binaries && ./download-difft.sh && cd ../..
# Build the app
npx tauri build
The built installer will be in src-tauri/target/release/bundle/.
How It Works
The Rust backend shells out to git for log, status, and file content retrieval.
Changed files are diffed in parallel using the bundled difftastic binary, which produces structured JSON output.
The processor converts difftastic's structural diff into aligned, syntax-highlighted rows.
The Svelte frontend renders a side-by-side diff view with the aligned rows.
Review state is stored in a per-repo SQLite database, keyed by content hashes so stale reviews are automatically invalidated.