A modern, minimalist Git TUI
Designed for clarity, speed, and smooth integration with your terminal workflow.
Linux / macOS:
curl -s https://raw.githubusercontent.com/thewizardshell/froggit/master/scripts/install.sh | bashWindows (PowerShell):
iwr https://raw.githubusercontent.com/thewizardshell/froggit/master/scripts/install.ps1 -UseBasicParsing | iexgit clone https://github.com/thewizardshell/froggit.git
cd froggit
go mod tidy
go build
./froggitFroggit can be customized using a froggit.yml configuration file. The configuration file should be placed in the same directory as the Froggit executable.
Create a froggit.yml file next to your Froggit executable with the following structure:
ui:
branding: true # Show Froggit branding (default: true)
position: "center" # UI position: "left", "center", "right" (default: "left")
git:
autofetch: true # Automatically fetch from remote (default: true)
defaultbranch: "main" # Default branch for new repositories (default: "main")| Option | Type | Default | Description |
|---|---|---|---|
branding |
boolean | true |
Display Froggit branding and visual elements |
position |
string | "left" |
UI positioning: "left", "center", or "right" |
| Option | Type | Default | Description |
|---|---|---|---|
autofetch |
boolean | true |
Automatically fetch from remote repositories on startup |
defaultbranch |
string | "main" |
Default branch name for new repositories and push operations |
Minimal Configuration:
git:
defaultbranch: "master"Full Configuration:
ui:
branding: false
position: "center"
git:
autofetch: false
defaultbranch: "develop"Note: If no configuration file is found, Froggit will use the default values shown above.
- Git installed and accessible in your terminal
- Go 1.20+ (only required if building from source)
- A terminal with Nerd Fonts support
- GitHub CLI (
gh) β optional, for GitHub integration
| Feature | Status | Description |
|---|---|---|
| Stage all | π’ | Stage all changes |
| Branches | π’ | View and manage branches |
| Remotes | π’ | Manage remote repositories |
| Push | π’ | Push changes to remote |
| Fetch | π’ | Fetch from remote |
| Pull | π’ | Pull changes (when remote changes available) |
| Commit | π’ | Create commits |
| Discard changes | π’ | Discard uncommitted changes |
| Refresh | π’ | Refresh repository status |
| Advanced mode | π’ | Access to logs, merge, stash, rebase |
| Logs | π’ | View commit history |
| Merge | π’ | Merge branches |
| Stash | π‘ | Stash changes |
| Rebase | π’ | Rebase branches |
| Feature | Status | Description |
|---|---|---|
| Create repository | π’ | Create new GitHub repository |
| Clone repository | π’ | Clone from your GitHub repositories |
π’ Supported Β Β π‘ In Development Β Β π΄ Planned
Froggit integrates seamlessly with GitHub CLI to enhance your workflow.
gh auth loginOnce authenticated, Froggit will detect gh and enable features like cloning repositories directly from GitHub.
β / β: Navigate filesSpace: Stage/unstage filesa: Stage all changesx: Discard changesc: Commit changes
b: View branchesn: Create new branchd: Delete branchEnter: Switch branch
A: Enter advanced modeM: Merge (in advanced mode)R: Rebase (in advanced mode)
q,Ctrl+C: QuitEsc: Go back?: Show help
For a complete list of shortcuts, see the keyboard shortcuts documentation.
- Installation Guide
- Architecture Overview
- Development Guide
- Contributing Guidelines
- Keyboard Shortcuts
- Git Handbook β A practical, visual Git reference
We welcome contributions! Please see our Contributing Guidelines for details on how to get started.
This project is licensed under the MIT License - see the LICENSE file for details.
Vicente Roa
GitHub: @thewizardshell

