A Neofetch-like CLI tool that beautifully displays GitHub profile information in your terminal β complete with ASCII art and contribution heatmaps.
- GitHub user info with bio, followers, repos, etc.
- ASCII-rendered GitHub profile picture (multiple styles)
- Contribution heatmap visualization
- Works in your terminal β especially tailored for Kitty
For local (non-Docker) usage:
- Python 3.7+
- Terminal Emulators that have imlemented kitty terminal graphics protocol
- ImageMagick (for image-to-ASCII conversion)
sudo curl https://raw.githubusercontent.com/isa-programmer/githubfetch/refs/heads/main/githubfetch.py -o /usr/local/bin/githubfetch
sudo chmod +x /usr/local/bin/githubfetch
Clone the repository:
git clone git@github.com:isa-programmer/githubfetch.git
cd githubfetch/
Set up virtual environment (optional but recommended):
python -m venv venv
source venv/bin/activate
python -m venv venv
venv\Scripts\activate
Install dependencies:
pip install -r requirements.txt
Run locally:
python githubfetch.py <github-username>
docker run -it ghcr.io/isa-programmer/githubfetch:latest <github-username> [options]
# Basic usage
docker run -it ghcr.io/isa-programmer/githubfetch:latest <github-username> --ascii --heatmap
# With GitHub token (inline)
docker run -it --env GITHUB_TOKEN="your_token" ghcr.io/isa-programmer/githubfetch:latest <github-username> --ascii --heatmap
# Using .env file
docker run -it --env-file .env ghcr.io/isa-programmer/githubfetch:latest <github-username> --ascii --heatmap
Note: Always use
-it
for proper terminal output support.
githubfetch <github-username>
githubfetch <github-username> --ascii[=style]
githubfetch <github-username> --heatmap
Style | Description | Example Characters |
---|---|---|
bold |
Thick, high-contrast | @%#*+=-:. |
fine |
Thin, detailed characters | .,:;i1tfLCG08@ |
retro |
Classic terminal style | .' ^",:;Il!i><~` |
block |
Solid block-based look | ββββ |
You can also disable color rendering with --nocolor
.
Authenticated requests are needed for:
- Contribution heatmap
- Higher API rate limits
- Private info (if token has permissions)
export GITHUB_TOKEN="your_personal_access_token"
Create .env
file:
GITHUB_TOKEN=your_personal_access_token
Then run with:
docker run -it --env-file .env ghcr.io/isa-programmer/githubfetch:latest <username> --ascii --heatmap
# Default style
githubfetch <github-username> --ascii
# Retro ASCII
githubfetch <github-username> --ascii=retro
# Block style, no color
githubfetch <github-username> --ascii=block --nocolor
# Heatmap with ASCII
githubfetch <github-username> --ascii --heatmap
Contributions, issues and feature requests are welcome!
- Fork the repo
- Create a new branch
- Submit a PR