Commit exactly what you meant.
Click line numbers to take single lines, or the bar beside a block to take the block. Write a summary, press Ctrl Enter, done. Amend, sign off, or add co-authors from the same form.

Everything GitHub Desktop does, rebuilt in Rust and drawn on your graphics card. It opens in under a fifth of a second.
Puck ports GitHub Desktop’s behaviour feature by feature, under its MIT license: the same views, the same dialogs, the same keyboard shortcuts. If your hands know GitHub Desktop, they already know Puck.
On first start, Puck offers to bring over the repositories GitHub Desktop knows about, along with your editor and shell. Signing in is only for GitHub features. Puck works with any Git host.
Click line numbers to take single lines, or the bar beside a block to take the block. Write a summary, press Ctrl Enter, done. Amend, sign off, or add co-authors from the same form.

Lanes come straight from Git’s parents, drawn only for the rows on screen, so 100,000 commits scroll at 2.3 ms a frame. Drag commits to reorder them, drop them on a branch to cherry-pick.

Puck says before a merge starts whether it will conflict, and before a rebase whether it will need a force push. When it does, Puck uses --force-with-lease, so it never overwrites work it hasn’t seen.

Commands, repositories, branches and tracked files share one list, matched as you type with the same fuzzy scoring GitHub Desktop uses for its filters. It opens in about 10 ms.

A light theme drawn from the same palette, or let Puck follow your system. Row density, diff colours, tab size and date formats are yours to set.

The numbers behind “fast” are on the benchmarks page, with the machine and method for each.