GitHub stats in the terminal, neofetch-style.
ghfetch renders compact terminal cards for GitHub users, repositories, and organizations, with optional JSON output for scripting.
- User, repository, and organization views
- Catppuccin-based terminal themes
- Optional JSON output for shell scripts and other tooling
- Language breakdowns with detailed table mode
- Contribution and streak stats when authenticated
cargo install ghfetchparu -S ghfetch-rs-bin
paru -S ghfetch-rs-gitgit clone https://github.com/OneNoted/ghfetch.git
cd ghfetch
cargo install --path .ghfetch checks for authentication in this order:
--tokenGITHUB_TOKENGH_TOKENgh auth token
Unauthenticated mode still works for public data, but GitHub rate limits are much lower and contribution data is unavailable.
ghfetch octocat
ghfetch user octocat --all
ghfetch repo rust-lang/rust
ghfetch repo https://github.com/rust-lang/rust
ghfetch org rust-lang --languages
ghfetch octocat --json
ghfetch repo rust-lang/rust --theme latteghfetch [username]ghfetch user <username>ghfetch repo <owner/repo|github-url|ssh-remote>ghfetch org <orgname>
--jsonprints structured output instead of a card--no-colordisables ANSI styling--theme <mocha|macchiato|frappe|latte>selects the card palette--verboseprints API request diagnostics to stderr
ghfetch user <username>shows a compact summary by default. Use--allto include every section, or specific section flags like--reposor--languages.ghfetch org <orgname>andghfetch repo <owner/repo|github-url|ssh-remote>show language summaries by default.- Detailed language mode (
--languages) prints a wider table instead of the card view.
cargo fmt --check
cargo clippy --all-targets --all-features -- -D warnings
cargo testThis repository ships two AUR packages:
ghfetch-rs-binfor tagged GitHub release artifactsghfetch-rs-gitfor the livemainbranch
The package names are suffixed with -rs because ghfetch is already taken in the AUR, but both packages still install the ghfetch executable.
- Pushing a
vX.Y.Ztag buildsghfetch-X.Y.Z-x86_64-unknown-linux-gnu.tar.gz, publishes a GitHub Release, and updatesghfetch-rs-bin - Pushing to
mainrefreshesghfetch-rs-git - CI also renders both AUR package definitions to catch metadata regressions early
Add AUR_SSH_PRIVATE_KEY to the GitHub repository secrets. It should be the private key for the AUR account notes, with the matching public key registered in that AUR account.
The generated AUR commits use:
Jonatan Jonassonnotes@madeingotland.com
The AUR templates and publish scripts live under packaging/aur and scripts.
MIT. See LICENSE.

