open source · GPLv3 · Tauri 2

A git desktop app
built for developers.

Cross-platform, developer-focused git desktop app. Tauri 2 + React. A dev-first alternative to TortoiseGit with extreme usability as the north star.

GitHub stars
platypusgit — main
+ feat(diff): hunk-level staging
src/features/diff/DiffViewer.tsx
- old inline-only diff path
~ src/lib/derive.ts
merge branch 'rebase-ui'

The whole repo, at a glance.

Real commit-graph rendering — branches, merges, tags, and refs. This is the actual history view, running right here.

platypusgit /
GraphSHASubjectAuthorDate
a1f9c02
HEAD → main origin/main Merge branch 'feature/side-by-side-diff'
JA Jonas Aasberg
2 min ago
7b3e418
feature/command-palette wip: command palette fuzzy matcher
PN Priya Nair
41 min ago
c0d5a9f
perf(graph): virtualize 50k-commit history
JA Jonas Aasberg
3 hours ago
e42b7d1
feat(diff): word-level intra-line highlight
LF Lena Fischer
5 hours ago
9af1c34
fix(blame): follow renames across moves
TO Tom Okafor
8 hours ago
2c8e6b0
origin/feature/side-by-side-diff feat(diff): side-by-side view toggle
LF Lena Fischer
9 hours ago
d71f8a3
v0.4.0 Merge pull request #128 from feature/rebase-ui
JA Jonas Aasberg
1 day ago
4e9b210
refactor(store): split repo store by concern
PN Priya Nair
1 day ago
f30c7e5
feat(rebase): drag-to-reorder todo steps
TO Tom Okafor
2 days ago
b6a1d88
feat(stash): stash to a new branch
JA Jonas Aasberg
2 days ago
8c24f60
feat(rebase): interactive plan editor
TO Tom Okafor
3 days ago
1d7e9a4
origin/release/0.3 feat(remotes): push --force-with-lease
JA Jonas Aasberg
4 days ago
5fb0c13
v0.3.0 test: libgit2 smoke coverage
D dependabot[bot]
5 days ago
0a93e77
Initial commit
JA Jonas Aasberg
6 days ago
commit a1f9c0250014e17ce9357c69a05c676673bc79f5c
Merge branch 'feature/side-by-side-diff'
Brings the side-by-side diff view to main. Adds a toggle in the diff
header and word-level intra-line highlighting on top of the existing
inline renderer.
JA Jonas Aasberg <jonas.aasberg@clave.no>
2 min ago parent: c0d5a9f
Parents 2
c0d5a9f
e42b7d1
main ● 0 changed
/Users/jonas/dev/fun/platypusgit/

Everything you do with git. In one window.

Staging & commit

Stage/unstage/discard files and individual hunks. Commit with amend + author override.

Diff & viewing

Worktree/index/HEAD diffs, commit-to-commit diffs, blame, repo browser.

Branches & tags

List/create/checkout/rename/delete branches. Lightweight + annotated tags.

History

Commit graph, file history, reflog viewer, detached-HEAD checkout.

History manipulation

Reset (soft/mixed/hard), cherry-pick, revert.

Stash

Save/apply/pop/drop, stash-to-branch.

Conflict resolution

3-way sides, accept ours/theirs, external mergetool, continue/abort.

Interactive rebase

Pick/reword/edit/squash/fixup/drop, continue/abort, base picker.

Remotes & network

Add/remove/rename/prune remotes, fetch/pull/push (with-lease/force), merge.

Dev-first

A TortoiseGit alternative designed around how developers actually work — keyboard-driven, dense, no hand-holding.

Extreme usability

The north star. Every operation reachable, fast, and visible. Hunks, rebases, conflicts — all first-class.

Cross-platform & native

Tauri 2 + Rust backend, React frontend. Small binary, real native windows on macOS, Windows, and Linux.

Open source

GPLv3. Read the code, file issues, send patches. No telemetry, no account, no lock-in.

Tauri 2 Rust React 19 TypeScript libgit2