Skip to content
NayJi7Public

Repository files navigation

gitoui

crates.io GitHub release cargo downloads curl installs brew installs GitHub stars Built with Ratatui Buy me a coffee

Say oui to the smoothest git terminal youser experience.

gitoui demo

gitoui (/ʒi.tu.i/) is a terminal git client. It started as a fork of serie, a beautifully-rendered git log --graph viewer, and grew into a daily-driver TUI that covers diffs, staging, blame, history, interactive rebase, conflict resolution, and GitHub Pull Requests / Issues.

gitoui.mp4

What's inside

The commit graph stays serie's: pre-rendered images sent inline through your terminal's image protocol (Kitty graphics, iTerm2 or Sixel). Around it, gitoui adds the operations you do on top of git log:

  • Side-by-side or inline diffs with git add -p-style hunk staging baked into the Uncommitted view.
  • b to blame, Shift+H to follow file history across renames.
  • Mark two commits with Space for a cumulative diff between them.
  • Visual interactive rebase: grab + drop rows, reword in place, pause + resume modes.
  • 3-way conflict editor, pick OURS / THEIRS / BOTH per hunk, no need to drop to vimdiff.
  • Full GitHub workflow: PR + Issue threads, reviews, reactions, labels, assignees, mention autocomplete, comment CRUD.
  • Inline GitHub avatars rendered through the same image protocols as the graph.
  • Two-layer keybinds: global [keybind] UserEvents plus per-view [keybind.scope.<path>] overrides.
  • Ten built-in themes (Tokyo Night, Dracula, Catppuccin, Gruvbox, Nord, Solarized, One Dark, Monokai Pro), and a .toml in ~/.config/gitoui/themes/ for your own.

Full feature tour at nayji7.github.io/gitoui/introduction/.

Install

One-liner for Linux + macOS (auto-detects OS/arch, drops gitoui into ~/.local/bin):

curl -fsSL https://nayji7.github.io/gitoui/install.sh | sh

Or with Homebrew on macOS and Linux:

brew install nayji7/tap/gitoui

Or via Cargo from crates.io:

cargo install gitoui

For pinned versions, manual downloads, or building from source, see the installation guide.

Terminals

Linux and macOS. The graph and avatars are drawn as inline images in terminals that speak an image protocol: Ghostty, Kitty, WezTerm, iTerm2, Konsole, foot (Sixel). Anywhere else (Alacritty, Terminal.app, Windows Terminal, …) gitoui falls back to a Unicode box-drawing graph, or force it with --graph-renderer ascii. Windows is not officially supported. Full matrix in terminal compatibility.

Quick start

cd <your git repo>
gitoui

Press ? for the keymap, q to quit. Full docs at nayji7.github.io/gitoui.

Contributing

Open source, open arms, PRs are welcome. See CONTRIBUTING.md for the dev setup and workflow.

License

MIT


Forked from serie. Inspired by GitKraken and the Git Graph VS Code extension.

Releases

Packages

Used by

Contributors

Languages