A fast, beautiful Git commit tree for your terminal. arbor renders your repository history as a color‑coded branching graph with a responsive TUI, a detail sidebar, and a curated forest palette that adapts to light and dark terminals.
🌲 smooth scrolling • 🔎 instant search • 🧭 branch‑aware graph • 🧩 MVU architecture
- Branching tree view with ANSI color mapping per branch line
- Detail sidebar with full commit message, date, and changed files
- Lazy loading for huge repos (only visible rows + buffer)
- Adaptive palette that stays soft and readable in light or dark terminals
- Keyboard‑first navigation with familiar Git‑like ergonomics
go run .Open a repo and explore:
arbor
arbor --all
arbor --limit 100arbor [flags]
Flags:
--all Include all local and remote branches
--limit int Limit the number of commits to parse (0 = no limit)
| Key | Action |
|---|---|
↑/↓ or k/j |
Move selection |
Enter |
Toggle changed‑files view |
/ |
Search commit messages/authors |
Tab |
Toggle sidebar |
q |
Quit |
Requirements
- Go 1.25.6+
Build locally
go build -o arbor .Run
./arborInstall
go install .- Git DAG traversal with
go-git(no shelling out) - MVU architecture (Bubble Tea) for responsive, predictable updates
- Lip Gloss styling for a cohesive, tree‑inspired aesthetic
- Lazy loading keeps the UI responsive even for large histories.
- Scrolling loads only what you see plus a small buffer.
PRs and issues are welcome! If you add features, keep the UI fast and the palette consistent.
MIT — see LICENSE.
Built with:
- Cobra (CLI)
- Bubble Tea (TUI)
- Lip Gloss (styling)
- go-git (Git access)
