GitHub - oug-t/difi: Review and refine Git diffs before you push

2 min read Original article ↗

difi

Review and refine Git diffs before you push

difi_demo

Why difi?

git diff shows changes. difi helps you review them.

  • ⚡️ Instant — Built in Go. Launches immediately with no daemon or indexing.
  • 🎨 Structured — A clean file tree and focused diffs for fast mental parsing.
  • 🧠 Editor-Aware — Jump straight to the exact line in nvim/vim to fix issues.
  • ⌨️ Keyboard-First — Navigate everything with h j k l. No mouse required.

(back to top)

Installation

Homebrew (macOS & Linux)

brew tap oug-t/difi
brew install difi

Go Install

go install github.com/oug-t/difi/cmd/difi@latest

Manual (Linux / Windows)

  • Download the binary from Releases and add it to your $PATH.

(back to top)

Workflow

  • Run difi in any Git repository.
  • By default, it compares your current branch against main.

(back to top)

Controls

Key Action
Tab Toggle focus between File Tree and Diff View
j / k Move cursor down / up
h / l Focus Left (Tree) / Focus Right (Diff)
e / Enter Edit file (opens editor at selected line)
? Toggle help drawer
q Quit

(back to top)

Neovim Integration

Get the ultimate review experience with difi.nvim.

  • Auto-Open: Instantly jumps to the file and line when you press e in the CLI.
  • Visual Diff: Renders diffs inline with familiar green/red highlights—just like reviewing a PR on GitHub.
  • Interactive Review: Restore a "deleted" line by simply removing the - marker. Discard an added line by deleting it entirely.
  • Context Aware: Automatically syncs with your difi session target.

Get difi.nvim

(back to top)

Git Integration

To use difi as a native git command (e.g., git difi), add it as an alias in your global git config:

git config --global alias.difi '!difi'

Now you can run it directly from git:

(back to top)

Contributing

git clone https://github.com/oug-t/difi
cd difi
go run cmd/difi/main.go

Contributions are especially welcome in:

  • diff.nvim rendering edge cases
  • UI polish and accessibility
  • Windows support

(back to top)

Star History

Star History Chart

(back to top)


Made with ❤️ by oug-t