README.md

January 12, 2026 ยท View on GitHub

Froggit

Froggit Logo

A modern, minimalist Git TUI

Designed for clarity, speed, and smooth integration with your terminal workflow.

Release Installer Tests Platforms Go Version

Froggit preview

Installation

Linux / macOS:

curl -s https://raw.githubusercontent.com/thewizardshell/froggit/master/scripts/install.sh | bash

Windows (PowerShell):

iwr https://raw.githubusercontent.com/thewizardshell/froggit/master/scripts/install.ps1 -UseBasicParsing | iex

Build from Source

git clone https://github.com/thewizardshell/froggit.git
cd froggit
go mod tidy
go build
./froggit

Configuration

Froggit can be customized using a froggit.yml configuration file. The configuration file should be placed in the same directory as the Froggit executable.

Creating Configuration File

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")

Configuration Options

UI Settings (ui)

OptionTypeDefaultDescription
brandingbooleantrueDisplay Froggit branding and visual elements
positionstring"left"UI positioning: "left", "center", or "right"

Git Settings (git)

OptionTypeDefaultDescription
autofetchbooleantrueAutomatically fetch from remote repositories on startup
defaultbranchstring"main"Default branch name for new repositories and push operations

Example Configurations

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.

Requirements

  • 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 Support

Git Operations

FeatureStatusDescription
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

GitHub CLI Integration

FeatureStatusDescription
Create repository๐ŸŸขCreate new GitHub repository
Clone repository๐ŸŸขClone from your GitHub repositories

GitHub Copilot Integration

FeatureStatusDescription
AI commit messages๐ŸŸขGenerate commit messages with Copilot

๐ŸŸข Supported ย ย  ๐ŸŸก In Development ย ย  ๐Ÿ”ด Planned

GitHub Copilot Integration

Froggit can generate AI-powered commit messages using your existing GitHub Copilot subscription.

Requirements

You need to have GitHub Copilot authenticated through one of these:

  • VS Code with GitHub Copilot extension
  • copilot.vim or copilot.lua for Neovim
  • Any editor that stores Copilot tokens in ~/.config/github-copilot/

Usage

  1. Stage your changes
  2. Press c to enter commit view
  3. Press Tab to generate an AI commit message

Froggit automatically detects if Copilot is available and shows the option in the commit view.

Note: No additional API keys needed - Froggit uses your existing Copilot authentication.

GitHub CLI Integration

Froggit integrates seamlessly with GitHub CLI to enhance your workflow.

gh auth login

Once authenticated, Froggit will detect gh and enable features like cloning repositories directly from GitHub.

GitHub CLI integration in Froggit

Key Shortcuts

File Management

  • โ†‘ / โ†“: Navigate files
  • Space: Stage/unstage files
  • a: Stage all changes
  • x: Discard changes
  • c: Commit changes

Branch Operations

  • b: View branches
  • n: Create new branch
  • d: Delete branch
  • Enter: Switch branch

Advanced Mode

  • A: Enter advanced mode
  • M: Merge (in advanced mode)
  • R: Rebase (in advanced mode)

Global

  • q, Ctrl+C: Quit
  • Esc: Go back
  • ?: Show help

For a complete list of shortcuts, see the keyboard shortcuts documentation.

Documentation

  • LazyGit โ€“ Git TUI for power users
  • tig โ€“ Terminal Git history browser
  • Magit โ€“ Git for Emacs

Learn More About Git

Contributing

We welcome contributions! Please see our Contributing Guidelines for details on how to get started.

Star History

Star History Chart

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Vicente Roa
GitHub: @thewizardshell


Froggit