eazygit

Crates.ioeazygit
lib.rseazygit
version0.5.1
created_at2025-12-13 02:25:46.773236+00
updated_at2025-12-24 16:17:45.989313+00
descriptionA fast TUI for Git with staging, conflicts, rebase, and palette-first UX
homepagehttps://github.com/picon/eazygit
repositoryhttps://github.com/picon/eazygit
max_upload_size
id1982473
size2,430,896
Pallab Kayal (pallabcodes)

documentation

https://docs.rs/eazygit

README

Eazygit

A fast TUI for Git with reliable staging, conflicts navigation, interactive rebase controls, and a palette-first workflow.

Install

  • From source: cargo install --path . (or cargo build --release and use target/release/eazygit).
  • Config lives at ~/.config/eazygit/config.toml (auto-created on first run). Theme changes persist after you pick them in the palette.

Run

eazygit

Features (brief)

  • Palette-driven commands for staging, conflicts jump/filter, merge notifier, interactive rebase (continue/abort/skip/edit with inline todo editing).
  • Hunk/line staging with apply/unstage patches.
  • Merge/pull safeguards (ff-only guard, timeouts), PR helper, auto-fetch toggle, delta side-by-side when available.
  • Custom background images with glassmorphism effect and optional font customization.

Visual Customization

Background Images

Eazygit supports two background modes:

1. Cell-Based Rendering (Default, Cross-Platform)

Works on all terminals with "pixel art" aesthetic due to terminal cell resolution (~200x50).

# In ~/.config/eazygit/config.toml (Linux/WSL)
# Or ~/Library/Application Support/eazygit/config.toml (macOS)

background_image_path = "bundled:1"  # Bundled gradients: 1, 2, or 3
# OR
background_image_path = "/path/to/your/image.jpg"

background_opacity = 0.3  # 0.1 = subtle, 0.5 = strong

2. Terminal-Native (Recommended for Best Quality)

Use your terminal's built-in background feature for full-resolution, smooth backgrounds:

iTerm2 (macOS):

  1. Preferences > Profiles > Window > Background Image
  2. Choose image, set blending 20-30%
  3. Remove background_image_path from eazygit config

Kitty (Linux/macOS):

# ~/.config/kitty/kitty.conf
background_image /path/to/image.jpg
background_opacity 0.3
background_image_layout scaled

WezTerm:

-- ~/.wezterm.lua
config.window_background_opacity = 0.9
config.window_background_image = '/path/to/image.jpg'

Comparison:

Mode Quality Portability Setup
Cell-Based Pixelated All terminals Eazygit config only
Terminal-Native Full-res, smooth Terminal-specific Terminal + eazygit config

Custom Fonts (Optional)

font_family = "JetBrainsMono Nerd Font"
font_size = 14

Note: Font support varies by terminal (iTerm2, xterm with OSC 50 support).

Notes

  • Requires git and a modern terminal. Fonts are controlled by your terminal; optional font_family/font_size are stored in config for external use.
  • Themes include dark, light, nord, dracula, gruvbox, everforest, onedark; you can add custom themes via TOML under ~/.config/eazygit/themes/.
Commit count: 0

cargo fmt