gitdash

module
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 7, 2026 License: MIT

README ΒΆ

πŸš€ GitDash

GitDash is a fast, beautiful, and non-destructive terminal dashboard for your Git repositories. It provides a real-time overview of your branches, commits, stashes, and project statistics without putting your workspace at risk.

GitDash Preview

🌟 Key Features

  • πŸ” Safe Inspection Mode: Fly through your branches with arrow keys. GitDash automatically fetches history and stats for the selected branch without checking it out physically. Your uncommitted work is 100% safe.
  • πŸ“Š Real-time Analytics: See project language composition, file counts, and commit velocity at a glance.
  • πŸ›‘οΈ Workspace Awareness: Clear visibility of your working directory status (Modified, Staged, Untracked, Conflicted).
  • ⌨️ Keyboard Centric: Designed for speed with intuitive Vim-style navigation.
  • 🎨 Premium Aesthetics: Built with BubbleTea and LipGloss for a stunning terminal experience.

πŸ’Ύ Installation

Ensure you have Go installed (version 1.18+), then run:

go install github.com/sh9336/gitdash/cmd/gitdash@latest

Ensure your GOBIN directory (typically ~/go/bin) is in your system PATH.

πŸš€ Quick Start

Launch GitDash from any git repository:

cd /your/git/repo
gitdash

Alternatively, specify a path:

gitdash --path /path/to/repo

⌨️ Controls

Key Action
Tab Toggle Focus between main scroll and Branches list
↑ / ↓ Scroll dashboard OR Inspect selected branch
f Force Checkout (Discards local changes to switch)
r Hard Refresh all data
? Toggle Help modal
q / Esc Quit GitDash

βš™οΈ Configuration

GitDash looks for a .gitdash.yaml in your project root or home directory.

commits:
  show_count: 15
  show_author: true
  show_relative_time: true

display:
  colors: true
  unicode: true

dashboard:
  refresh_interval: "30s"

πŸ› οΈ Performance

GitDash is built for speed. It uses the go-git library for direct object access, meaning it doesn't need to shell out to the git binary for every update. It utilizes storer.ErrStop optimization to ensure large histories are truncated and loaded efficiently.

🎯 Use Case Matrix

Use Case How GitDash Helps
Code Review Inspect a PR branch's commits instantly without checking it out locally.
Repo Auditing View language distribution and file counts across different versions of the code.
Workspace Safety Browse the repo while keeping your complicated, uncommitted setup untouched.
Snappy Navigation Fast, Vim-style scrolling through large commit histories.

🀝 Contributing

Contributions are welcome! Whether it's a bug report, feature request, or a Pull Request:

  1. Fork the repo.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

πŸ“ License

Distributed under the MIT License. See LICENSE for more information.

Directories ΒΆ

Path Synopsis
cmd
gitdash command
internal
git
ui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL