Stagger is a modern, lightweight desktop Git GUI client built for speed, clarity, and seamless workflow management. Powered by Tauri v2, React 19, TypeScript, and Rust, Stagger provides a visual workspace for staging changes, switching branches, stashing work, and creating pull requests without leaving your desktop interface.
- ⚡ Granular Staging & Interactive Mesh: Stage, unstage, discard, and connect individual diff hunks visually using the node-based staging canvas.
- 📊 Interactive History Graph: Visualize commit topology DAG with branch lanes, merge tracks, release tags, commit search (by message, author, SHA, branch, or stash), and deep commit inspection with one-click actions (revert, cherry-pick, branch, tag).
- 🌿 Branch Management: Create, checkout, and merge branches smoothly with built-in protections and safety checks.
- 🛡️ Smart Auto-Stashing: Safely switch branches without losing uncommitted work thanks to automatic worktree stashing.
- 📦 Stash Management: Save, view, pop, apply, or drop stashes directly within the application.
- 🚀 Pull Request Integration: Draft and initiate GitHub/GitLab pull requests directly from your workspace.
- 👥 Real-Time Collaboration: Built-in multiplayer mode for collaborating on repositories.
- 🎨 Modern Theming: Premium aesthetic with Catppuccin Mocha and Latte themes, intuitive navigation, keyboard shortcuts, and responsive layouts.
- Desktop Framework: Tauri v2 (Rust backend)
- Frontend: React 19 + TypeScript
- Build Tool: Vite
- Icons: Lucide React
- Git Engine: git2-rs / Git CLI
Ensure you have the following installed on your development machine:
- Node.js (v18 or higher) & npm or bun
- Rust (latest stable toolchain via rustup)
- System dependencies required for Tauri development on your operating system (see Tauri Prerequisites).
-
Clone the repository:
git clone https://github.com/your-username/Stagger.git cd Stagger -
Install dependencies:
npm install # or bun install
Run the Tauri application in development mode with hot-reloading:
npm run tauri dev
# or
bun tauri devBuild the native executable for your current OS:
npm run tauri build
# or
bun tauri buildStagger/
├── src/ # React 19 Frontend (TypeScript, CSS, Components)
│ ├── App.tsx # Main Application UI & Git State Management
│ ├── App.css # Styling system & dark purple theme
│ └── main.tsx # React entry point
├── src-tauri/ # Tauri Rust Backend
│ ├── src/ # Rust source code & Tauri IPC handlers
│ ├── Cargo.toml # Rust package manifests & dependencies (git2, tauri)
│ └── tauri.conf.json # Tauri configuration (window size, permissions, icons)
├── package.json # Frontend dependencies & scripts
├── LICENSE # GPL-3.0 License File
└── README.md # Project documentation
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
You are free to:
- Use: Run the software for any purpose.
- Study: Inspect and modify the source code.
- Share: Copy and redistribute the software.
- Improve: Release your modifications to the public under the same license terms.
Under the terms of GPL-3.0, any derivative works or distributions must also be made available under the GPL-3.0 license with full source code disclosure.

