<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: TheSorcerer</title><link>https://news.ycombinator.com/user?id=TheSorcerer</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 21 Jul 2026 16:36:09 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=TheSorcerer" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>I've used Lazygit daily for almost four years. It's a fantastic project, and I suggest donating to Jesse as he did a great job.<p>In my daily job a heavily use Git and a few things bothered me, so I decided to create my own project. Go is not a language I wanted to explore, while I had this interest in giving Zig a try, so eventually I picked it and was blown away by how fast it can be. There's a file called ENHANCEMENTS_OVER_LAZYGIT.md (<a href="https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEME" rel="nofollow">https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEME</a>...) but I'll soon merge it into the main README. At my daily job, I handle huge git projects, and use Ziggity daily now, and I'm much more productive.
I can name a few improvements over Lazygit in random orders:<p>- Text selection with automatic copy, it works super smoothly and it's useful when you need to quickly copy a commit hash, a portion of code, a diff, or a branch name.<p>- Force-push with lease, it's something that should be always used when force pushing. If you work in a large codebase it should always be your first attempt after a rebase, and that's how Ziggity works. It will ask to fallback to normal force-push if it didn't work, but you'll remain in control.<p>- Git actions are async without leaving the TUI: this is in my opinion the biggest improvement over Lazygit, and it makes me much more productive, Lazygit was continuously switching to prompt and asking to press to return back to the TUI. There are also good reasons for this but as a general philosophy I wanted something different, and more optimized.<p>- I've implemented the 50/72 rule (<a href="https://dev.to/noelworden/improving-your-commit-message-with" rel="nofollow">https://dev.to/noelworden/improving-your-commit-message-with</a>...) for the commits and I can finally prepare good commits, where I highlight when a title is too long and there's a shadow for the linewrap. They are both configurable so I'm not forcing this option.<p>- I have also implemented the correct behavior a couple of other features that are currently broken on Lazygit, the most serious one for example is that switching branch by name is completely broken and you'll end up in commit in a detached state (try yourself if you don't believe me).<p>If you decide to give Ziggity a try, I'm happy to receive feedback</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:44:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990525</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990525</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990525</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>Have a look at <a href="https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEMENTS_OVER_LAZYGIT.md" rel="nofollow">https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEME...</a></p>
]]></description><pubDate>Tue, 21 Jul 2026 10:37:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990478</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990478</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990478</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>Check <a href="https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEMENTS_OVER_LAZYGIT.md" rel="nofollow">https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEME...</a></p>
]]></description><pubDate>Tue, 21 Jul 2026 10:37:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990476</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990476</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>I will probably merge these into main README file, but have a look at <a href="https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEMENTS_OVER_LAZYGIT.md" rel="nofollow">https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEME...</a></p>
]]></description><pubDate>Tue, 21 Jul 2026 10:35:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990463</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990463</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990463</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>Never! (Pinky finger)</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:32:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990440</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990440</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>Thank you!
I've used AI to fix my English as it's not my primary language and probably got flagged.</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:31:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990427</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990427</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990427</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>So many wrong assumptions in a single message.
Lazygit is a fantastic project, I've been using it for several years, but there were so many things I wanted to improve/change, that eventually I decided to create my own project. Go is not a language I wanted to explore, while I had this interest in giving Zig a try, so eventually I picked it and was blown away by how fast it can be.
There's a file called ENHANCEMENTS_OVER_LAZYGIT.md (<a href="https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEMENTS_OVER_LAZYGIT.md" rel="nofollow">https://github.com/simoarpe/ziggity/blob/main/docs/ENHANCEME...</a>) but I'll soon merge it into the main README.
At my daily job, I handle huge git projects, and use Ziggity daily now, and I'm much more productive.<p>I can name a few improvements over Lazygit in random orders:<p>- Text selection with automatic copy, it works super smoothly and it's useful when you need to quickly copy a commit hash, a portion of code, a diff, or a branch name.<p>- Force-push with lease, it's something that should be always used when force pushing. If you work in a large codebase it should always be your first attempt after a rebase, and that's how Ziggity works. It will ask to fallback to normal force-push if it didn't work, but you'll remain in control.<p>- Git actions are async without leaving the TUI: this is in my opinion the biggest improvement over Lazygit, and it makes me much more productive, Lazygit was continuously switching to prompt and asking to press to return back to the TUI. There are also good reasons for this but as a general philosophy I wanted something different, and more optimized.<p>- I've implemented the 50/72 rule (<a href="https://dev.to/noelworden/improving-your-commit-message-with-the-50-72-rule-3g79" rel="nofollow">https://dev.to/noelworden/improving-your-commit-message-with...</a>) for the commits and I can finally prepare good commits, where I highlight when a title is too long and there's a shadow for the linewrap. They are both configurable so I'm not forcing this option.<p>- I have also implemented the correct behavior a couple of other features that are currently broken on Lazygit, the most serious one for example is that switching branch by name is completely broken and you'll end up in commit in a detached state (try yourself if you don't believe me).<p>So to answer your question: You should not switch to Ziggity if you are fine with Lazygit. But if you are a proficient Git user, handle largit Git projects, and you have used Lazygit for a while and noticed a few things were "suboptimal"; then you should give Ziggity a try.</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:29:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990419</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990419</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990419</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>Neat!</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:12:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990278</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990278</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990278</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>Happy to receive feedback and suggestions if you have any. 
I've used Lazygit for several years, and it's an amazing project, but I'm much faster and productive with Ziggity now: you'll never leave the TUI, and the text is selectable with the mouse.</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:10:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990262</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990262</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990262</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>This is probably the most valuable feedback received so far. I'll make sure to draft a new README file following what you have suggested. The current version was partially written with the help of AI as English is not my primary language but I recognize that I should put more emphasis on what this project solves. I've put a few points in a separate file called ENHANCEMENTS_OVER_LAZYGIT.md but I will probably review and merge it into the primary README file.
Thanks!</p>
]]></description><pubDate>Tue, 21 Jul 2026 10:06:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=48990232</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48990232</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48990232</guid></item><item><title><![CDATA[New comment by TheSorcerer in "Ziggity – A terminal UI for Git, written in Zig"]]></title><description><![CDATA[
<p>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.<p>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.<p>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<p>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.<p>Install: `brew install simoarpe/ziggity/ziggity`, or grab a static binary
from the releases page.<p>Repo: <a href="https://github.com/simoarpe/ziggity" rel="nofollow">https://github.com/simoarpe/ziggity</a><p>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.</p>
]]></description><pubDate>Mon, 20 Jul 2026 15:46:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=48980507</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48980507</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48980507</guid></item><item><title><![CDATA[Ziggity – A terminal UI for Git, written in Zig]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/simoarpe/ziggity">https://github.com/simoarpe/ziggity</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48980506">https://news.ycombinator.com/item?id=48980506</a></p>
<p>Points: 79</p>
<p># Comments: 66</p>
]]></description><pubDate>Mon, 20 Jul 2026 15:46:18 +0000</pubDate><link>https://github.com/simoarpe/ziggity</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=48980506</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48980506</guid></item><item><title><![CDATA[Google Terminated my Play Developer Account. 7 years of rejected appeals]]></title><description><![CDATA[
<p>Article URL: <a href="https://medium.com/@fragmenteddeveloper/%EF%B8%8F-google-terminated-your-play-store-developer-account-2e7dc828a8af">https://medium.com/@fragmenteddeveloper/%EF%B8%8F-google-terminated-your-play-store-developer-account-2e7dc828a8af</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=28378701">https://news.ycombinator.com/item?id=28378701</a></p>
<p>Points: 7</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 01 Sep 2021 11:58:32 +0000</pubDate><link>https://medium.com/@fragmenteddeveloper/%EF%B8%8F-google-terminated-your-play-store-developer-account-2e7dc828a8af</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=28378701</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28378701</guid></item><item><title><![CDATA[Launching Routergram to stay in touch with your Telegram community]]></title><description><![CDATA[
<p>Article URL: <a href="https://routergram.com">https://routergram.com</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=27227729">https://news.ycombinator.com/item?id=27227729</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 20 May 2021 21:43:24 +0000</pubDate><link>https://routergram.com</link><dc:creator>TheSorcerer</dc:creator><comments>https://news.ycombinator.com/item?id=27227729</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27227729</guid></item></channel></rss>