{"id":21890081,"url":"https://github.com/ejfox/git-status-dash","last_synced_at":"2025-09-09T14:03:52.391Z","repository":{"id":244347388,"uuid":"814982292","full_name":"ejfox/git-status-dash","owner":"ejfox","description":"See the status of all the repos in a folder in one place","archived":false,"fork":false,"pushed_at":"2025-07-27T19:32:29.000Z","size":101,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-06T18:00:17.044Z","etag":null,"topics":["cli","dashboard","git"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ejfox.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-06-14T05:28:50.000Z","updated_at":"2025-07-27T19:32:33.000Z","dependencies_parsed_at":"2024-06-14T06:45:29.191Z","dependency_job_id":"564646ea-72de-4215-b199-83974987a527","html_url":"https://github.com/ejfox/git-status-dash","commit_stats":null,"previous_names":["ejfox/git-status-monitor","ejfox/git-status-dash"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/ejfox/git-status-dash","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejfox%2Fgit-status-dash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejfox%2Fgit-status-dash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejfox%2Fgit-status-dash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejfox%2Fgit-status-dash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ejfox","download_url":"https://codeload.github.com/ejfox/git-status-dash/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejfox%2Fgit-status-dash/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274308314,"owners_count":25261218,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","dashboard","git"],"created_at":"2024-11-28T11:28:42.982Z","updated_at":"2025-09-09T14:03:52.349Z","avatar_url":"https://github.com/ejfox.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Git Status Dashboard\n\n[![Release](https://github.com/ejfox/git-status-dash/actions/workflows/production_release.yml/badge.svg)](https://github.com/ejfox/git-status-dash/actions/workflows/production_release.yml)\n[![Test Build](https://github.com/ejfox/git-status-dash/actions/workflows/test_build.yml/badge.svg)](https://github.com/ejfox/git-status-dash/actions/workflows/test_build.yml)\n[![GitHub release (latest by date)](https://img.shields.io/github/v/release/ejfox/git-status-dash)](https://github.com/ejfox/git-status-dash/releases/latest)\n[![npm version](https://img.shields.io/npm/v/git-status-dash)](https://www.npmjs.com/package/git-status-dash)\n\n\u003cimg width=\"1002\" alt=\"Screenshot 2024-06-14 at 1 29 22 AM\" src=\"https://github.com/ejfox/git-status-monitor/assets/530073/67b94585-f78e-4789-986b-25439b8ccce1\"\u003e\n\nA beautiful, blazingly fast git repository monitor that watches all your repos in real-time. Stop tab-switching to check git status – see everything at once in a gorgeous TUI that adapts to your workflow.\n\n**Why you'll love it:**\n- 🚀 **Lightning fast** - Go rewrite is 35% faster with 90% less memory\n- 🎨 **Gorgeously themed** - Auto-detects your system theme or import from VS Code/Alacritty  \n- ⚙️ **Deeply configurable** - Every detail customizable via intuitive CLI\n- 🔍 **Smart monitoring** - Only shows what matters, when it matters\n\n## 🚀 Get the Fastest Version\n\n**Go version is 35% faster, uses 90% less memory, has zero dependencies, and includes advanced theming \u0026 config.**\n\n### Quick Start (Recommended)\n```bash\n# Download the fast Go binary\ncurl -L https://github.com/ejfox/git-status-dash/releases/latest/download/git-status-dash-go-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m) -o git-status-dash\nchmod +x git-status-dash \u0026\u0026 sudo mv git-status-dash /usr/local/bin/\n\n# Initialize with beautiful defaults\ngit-status-dash config init\ngit-status-dash\n```\n\n### Or Use Node.js Version\n```bash\n# Basic usage\nnpx git-status-dash\n\n# Opens in TUI mode (thanks @zkbkb)\nnpx git-status-dash -t\n\n# Open another directory\nnpx git-status-dash -d ~/code/\n\n# Get help\nnpx git-status-dash --help\n```\n\n**Performance comparison on 127 repos:**\n- **Go**: 1.159s, 6.7MB RAM ⚡  \n- **Node.js**: 1.241s, 69MB RAM\n\n## ⚡ New in Go Version\n\n### 🎨 **Advanced Theming**\n- **Auto-detect** system light/dark mode\n- **Import themes** from VS Code, Alacritty, Kitty\n- **4 built-in themes**: matrix, minimal, hacker, neon\n- **Popular themes**: ayu, catppuccin, nord, dracula\n\n### ⚙️ **Deep Configuration**\n- **Display**: tree view, timestamps, flash on change\n- **Filters**: show/hide by status, recent repos only\n- **Behavior**: refresh rates, TTL mode, notifications\n- **Performance**: worker pools, timeouts, scan depth\n\n### 🔧 **Quick Config Examples**\n```bash\n# Set up your perfect environment\ngit-status-dash config auto                          # Auto-detect theme\ngit-status-dash config set display.tree_view true    # Tree structure\ngit-status-dash config set filter.only_recent true   # Recent repos only  \ngit-status-dash config set behavior.ttl_mode true    # Exit after 30s\n\n# Import themes from other apps\ngit-status-dash config download ayu-vscode\ngit-status-dash config import alacritty ~/.config/alacritty/ayu.yml\n```\n\n---\n\n## How it works\n\nRecursively scans directories and shows git status for all repos. Defaults to current directory, but you can point it anywhere.\n\n## Development setup\n\n```bash\n# Go version\ngo run *.go\n\n# Node.js version  \nnpm install \u0026\u0026 node index.mjs\n```\n## What's it telling me? 🤔\n\nThe table displays the following information for each repository:\n\n- Repository name (relative to the scanned directory)\n- Status icon and details:\n  - ✓ (green): The repository is in sync with the remote.\n  - ↑ (yellow): The local branch is ahead of the remote by the specified number of commits.\n  - ↓ (yellow): The local branch is behind the remote by the specified number of commits.\n  - ✕ (red): There are uncommitted changes or the repository is not a valid git repo.\n\nThe repositories are sorted by the most recently modified ones at the top, so you can quickly see which repos need your attention.\n\n\n## 🔧 Configuration Reference (Go Version)\n\n### Themes\n```bash\ngit-status-dash config themes                    # List available themes\ngit-status-dash config theme matrix              # Set theme  \ngit-status-dash config auto                      # Auto-detect from system\ngit-status-dash config sources                   # List theme sources\ngit-status-dash config download ayu-vscode       # Download from source\ngit-status-dash config import kitty ~/.config/kitty/theme.conf\n```\n\n### Display Options\n```bash\ngit-status-dash config set display.tree_view true         # Show as tree\ngit-status-dash config set display.flash_on_change true   # Flash updates\ngit-status-dash config set display.show_timestamp true    # Show timestamps\ngit-status-dash config set display.compact_mode true      # Compact display\ngit-status-dash config set display.group_by_status true   # Group by status\n```\n\n### Filter Options  \n```bash\ngit-status-dash config set filter.show_synced true        # Show clean repos\ngit-status-dash config set filter.only_recent true        # Recent repos only\ngit-status-dash config set filter.recent_days 3           # Define \"recent\"\ngit-status-dash config set filter.show_dirty false        # Hide dirty repos\n```\n\n### Behavior Options\n```bash\ngit-status-dash config set behavior.refresh_interval 500  # Refresh rate (ms)\ngit-status-dash config set behavior.ttl_mode true         # Exit after timeout\ngit-status-dash config set behavior.ttl_seconds 30        # Timeout duration\ngit-status-dash config set behavior.watch_files false     # Disable file watching\ngit-status-dash config set behavior.notify_on_change true # System notifications\n```\n\n### Performance Tuning\n```bash\ngit-status-dash config set performance.workers 8          # Concurrent operations\ngit-status-dash config set performance.timeout 5          # Git timeout (seconds)\ngit-status-dash config set performance.max_depth 3        # Scan depth limit\n```\n\n### Config File Location\n- **Linux/macOS**: `~/.config/git-status-dash/config.json`\n- **Windows**: `%APPDATA%/git-status-dash/config.json`\n- **Themes**: `~/.config/git-status-dash/themes/`\n\n### Built-in Themes\n- **matrix**: Hacker green with effects\n- **minimal**: Clean monochrome  \n- **hacker**: Retro terminal style\n- **neon**: Bright colors and particles\n\n### Supported Theme Sources\n- **VS Code**: `.json` theme files\n- **Alacritty**: `.yml` config files  \n- **Kitty**: `.conf` theme files\n\n---\n\nIf you have any questions, suggestions, PRs are welcome. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fejfox%2Fgit-status-dash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fejfox%2Fgit-status-dash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fejfox%2Fgit-status-dash/lists"}