strix¶
A focused, polished TUI for staging changes and viewing diffs without leaving the terminal. Named after Strix, the genus of owls known for sharp vision and quiet observation.
strix is built for one workflow done well: review a changeset and stage it. It
deliberately leaves commit creation, branch management, and remote operations to
git itself, and spends its effort on the parts a terminal usually does poorly —
a clean two-pane layout, syntax-highlighted diffs, real mouse support, and
themes that match a modern editor. See
Non-goals for the full list of what strix
intentionally doesn't do.
What it looks like¶
- Left — Changes. Staged files on top, unstaged + untracked below. Stage, unstage, and reset files; jump between them by keyboard or mouse.
- Right — Diff. A syntax-highlighted diff of the selected file, in unified or side-by-side mode, with smooth scrolling.
Highlights¶
- Syntax highlighting on diffs (powered by syntect)
- Light, dark, and popular preset themes (Catppuccin, Tokyo Night, Gruvbox)
- Mouse support: click to select, click to stage, scroll diffs
- Customizable keybindings
- File-level reset with confirmation
- Toggleable History view with a colored branch/merge rail graph and
commit-vs-parent diffs (press
i) - Fast: pure-Rust git reads via gitoxide, cached diff rendering
Get started¶
- Installation — Homebrew, apt, or build from source
- Usage — the two-pane workflow
- Keybindings — the full key map
- Theming and Configuration
- Architecture — how it's put together