Ziggity – A terminal UI for Git, written in Zig

71 points - yesterday at 3:46 PM

Source

Comments

greggroth yesterday at 5:09 PM
Neat project, but the README would benefit from a human author. I can tell what you prompted by the way the README is worded. It should tell me more about what this project solves. I don't care that it uses idiomatic zig. Why should I use this instead of lazygit?
JacobAsmuth yesterday at 6:56 PM
This is huge. I've always wanted to use Git in the terminal but never been happy with the underlying language that other TUIs were written in. Now that I know that I'm using developer-managed memory I can be much more comfortable and confident changing between branches, pushing, and pulling, and even merging code. Thanks Simone!
dd_xplore yesterday at 6:15 PM
I wonder when is the 900,000 lines single commit coming for Rust rewrite
kvisner yesterday at 6:48 PM
Very cool, but if I'm prompting / looping an AI agent as my main development process, what is the use case here? I feel the biggest help would be to make Reviewing PRs from the terminal easier, I care less about commit logs and status.
robertheadley yesterday at 7:43 PM
I know what these words mean, but if I didn't this would be a whole lot of nonsense.
arikrahman yesterday at 5:27 PM
Maybe can emphasize yourself and call it LazyZig or something with the lazy moniker.
PrimalPower yesterday at 10:38 PM
i've always found magit better than any opinionated git terminal UI. Including LazyGit.

With Claude, i find myself reaching for Magit even less.

mayhemducks yesterday at 10:07 PM
If Quagmire were in charge of naming things.
alimbada yesterday at 9:15 PM
I like the Zig+Git+TTY portmanteau.
NamlchakKhandro yesterday at 11:24 PM
Need to change the logo to one of a guy with a massive chin and a creepy stare.
hoppp yesterday at 9:24 PM
I like it but the donut animation is not needed, overbuilding gives AI slop vibes

I would love to use it without gimmicks.

colesantiago yesterday at 6:42 PM
Honest feedback:

This is AI generated TUI slop made with claude.

I've been seeing a sad trend of these things being built with AI with no care and will be just abandoned in less than a month.

Why should I use this when I can use lazygit which is more popular and has been around and battle tested for years?

sashank_1509 yesterday at 6:24 PM
I’m such a CLANKER hater now, I want to know if this was written by agents or not. If written by agents, I don’t want anything to do with it. I only want human written software, even LLM autocomplete seems a bridge too far.
icase yesterday at 8:10 PM
i appreciate that it’s not more rust slop, but i never understood the need for a git frontend.
TheSorcerer yesterday at 3:46 PM
Hi HN, I've been building Ziggity, a keyboard-driven terminal UI for Git. It's inspired by lazygit (which I used daily), but written from scratch in Zig rather than being a port.

Why another one? Two reasons, honestly. There were a few areas of lazygit I wanted to improve on for my own workflow, and I wanted a real project to build in Zig, which is genuinely powerful and fast, and a joy once it clicks. It compiles to a single small static binary with explicit memory ownership and no libgit2, it just shells out to the `git` you already have. The UI is built on libvaxis. And I let myself add a bit of sugar along the way, because a tool you stare at all day might as well be pleasant.

A few things that are a bit different from lazygit: - A divergence view + status-coloured commit hashes so ahead/behind commits stand out at a glance - Independent drill-downs in the Branches/Commits panels (deliberate, not a port artifact) - Line level staging, interactive rebase, custom patch building, bisect, arbitrary-ref diffing

It's honest about its stage: v0.3.0, macOS/Linux/Windows builds, MIT. The Windows build compiles and libvaxis supports it, but I haven't smoke-tested it on real hardware yet. There's an about screen with a spinning ASCII donut, because why not.

Install: `brew install simoarpe/ziggity/ziggity`, or grab a static binary from the releases page.

Repo: https://github.com/simoarpe/ziggity

I'd genuinely appreciate feedback, especially on the UX and on the Zig code if you're into that. It's a spare time project, so bug reports and "this feels wrong" notes are welcome.

eadesola yesterday at 5:47 PM
[dead]
lnenad yesterday at 8:27 PM
I actually made the same thing in Rust https://github.com/lnenad/difiko

Just FYI a large portion is vibecoded for those that don't like that.