A dynamic GitHub profile README that automatically updates daily with live GitHub statistics. The profile banner displays an animated ASCII art logo alongside real-time stats including commit counts, lines of code, stars, followers, and repository counts -- all fetched from the GitHub GraphQL API and rendered into SVG files.
- Auto-Updating Stats - GitHub Actions workflow runs daily to pull the latest commit, star, follower, LOC, and repo counts via the GitHub GraphQL API
- Animated ASCII Art Banner - A custom ASCII art logo rendered in SVG with a cascading pulse animation
- Dark/Light Mode Support - Separate SVG variants that adapt to the user's GitHub theme preference using
<picture>andprefers-color-scheme - Compact & Full Layouts - Two layout variants: a compact card with stats, and a full-size version with skills/technologies listed
- Intelligent LOC Caching - SHA-256 hash-based cache tracks per-repo commit counts so only changed repos are re-queried, minimizing API calls
- Retry Logic - Exponential backoff for GitHub API gateway errors (502/503/504) with up to 5 retries
- Language: Python 3.12
- API: GitHub GraphQL v4
- CI/CD: GitHub Actions (scheduled cron + push trigger)
- SVG Parsing: lxml (etree)
- Image Processing: Pillow (for ASCII art generation)
- Python 3.12+
- A GitHub fine-grained personal access token with read access to: Followers, Starring, Watching, Commit statuses, Contents, Metadata
git clone https://github.com/Technical-1/Technical-1.git
cd Technical-1
pip install -r cache/requirements.txt# Set required environment variables
export ACCESS_TOKEN="your_github_token"
export USER_NAME="your_github_username"
# Run the stats updater
python scripts/today.py
# Generate ASCII art from an image (utility script)
python scripts/generate_ascii.py your_image.png --width 50 --height 30 --format svg# Install dependencies
pip install -r cache/requirements.txt
# Run the stats updater locally
ACCESS_TOKEN=ghp_xxx USER_NAME=Technical-1 python scripts/today.pyTechnical-1/
├── .github/
│ └── workflows/
│ └── build.yaml # GitHub Actions workflow (daily cron + push)
├── cache/
│ ├── requirements.txt # Python dependencies
│ └── *.txt # Per-user LOC cache files (SHA-256 named)
├── compact/
│ ├── dark_mode_simple.svg # Compact banner (dark theme)
│ └── light_mode_simple.svg # Compact banner (light theme)
├── full/
│ ├── dark_mode.svg # Full banner with skills (dark theme)
│ └── light_mode.svg # Full banner with skills (light theme)
├── scripts/
│ ├── today.py # Main stats fetcher & SVG updater
│ └── generate_ascii.py # Image-to-ASCII art converter
├── ascii_logo.svg # Standalone animated ASCII logo
└── README.md
Languages:
Cloud & Data:
Automation & Enterprise:
Web Development:
AI & Machine Learning:
DevOps & Tools:
Connect:
Jacob Kanfer - GitHub


