Create beautiful text patterns on your GitHub contribution graph!
A Python GUI application that automates GitHub commits to draw text patterns (like "HELLO", "2026", or your name) on your GitHub contribution graph using backdated commits.
π€ Note: This project was built with AI. While it is a fun tool for artistic expression, AI-generated code may contain mistakes. If you find any bugs or have improvements, contributions are welcomeβfeel free to open a Pull Request!
- π― Text-to-Pattern: Type any text and see it previewed on the contribution grid
- π Real-time Preview: Visual preview showing exactly how your pattern will look
- πͺ Intensity Control: Adjust commits per pixel (1-10) for darker green squares
- β‘ Character Validation: Automatically validates text length (max 8-9 characters)
- π Progress Tracking: Real-time logs and progress bar
- π¨ Modern Dark UI: Beautiful GitHub-themed interface
- π No Login Required: Uses your existing Git credentials
βββββββββββββββββββββββββββββββββββββββββββββββ
β π¨ Hacking GitHub Contribution Graph β
βββββββββββββββββββββββββββββββββββββββββββββββ€
β Repository URL: β
β https://github.com/AmiXDme/Hacking-GitHub-Contribution-Graph.git β
β β
β Text to Draw (Max 8 characters): β
β HELLO β
β β 5 chars | 120 commits | 29 weeks β
β β
β Commit Intensity: ββββββββββ 3 β
β β
β ββββ Pattern Preview ββββββββββββββββββββ β
β β ββ ββ ββ ββ ββ ββ βββ β β
β β ββ ββ ββ ββ ββ ββ ββ ββ β β
β β ββ ββ ββ ββ ββ ββ ββ ββ β β
β β βββ ββ ββ ββ ββ ββ ββ ββ β β
β β ββ ββ ββ ββ ββ ββ ββ ββ β β
β β ββ ββ ββ ββ ββ ββ ββ ββ β β
β β ββ ββ ββ βββ βββ βββ βββ β β
β βββββββββββββββββββββββββββββββββββββββββ β
β β
β [π Generate Pattern] [βΉ Stop] β
β Progress: ββββββββββββββββββ 45% β
β β
β ββββ Logs βββββββββββββββββββββββββββββ β
β β π¨ Creating pattern: 'HELLO' β β
β β [45/120] 'L' at Week 15, Day 3 β β
β ββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββ
- Python 3.11+ installed
- uv package manager (Install uv)
- Git configured with credentials
- A Private GitHub Repository
-
Clone or Download this project
-
Create virtual environment:
uv venv
-
Install dependencies:
.venv\Scripts\activate uv pip install gitpython
Windows:
run.batOr manually:
.venv\Scripts\activate
python main.py- Create a NEW PRIVATE repository on GitHub
- Copy the repository URL (e.g.,
https://github.com/username/my-art.git)
β οΈ Important: Use a NEW, EMPTY private repository. Don't use existing projects!
- Launch the application (
run.bat) - Paste Repository URL in the first field
- Type your text (e.g., "HELLO", "2026", "LOVE")
- Maximum 8-9 characters (GitHub graph is 53 weeks wide)
- Supports A-Z, 0-9, and some symbols (!, ?, +, -, .)
- Adjust Intensity slider (1-10 commits per pixel)
- 1 = Light green
- 5-7 = Medium green
- 10 = Dark green
- Preview automatically shows your pattern
- Click "Generate Pattern"
- Watch the progress in real-time
- Wait for completion (can take a few minutes depending on text length)
- Go to your GitHub profile
- Click "Contribution settings" (above the graph)
- Enable "Private contributions" checkbox
- Refresh the page - your pattern should appear!
β° Note: GitHub may take 5-10 minutes to update the contribution graph.
- Text Conversion: Converts each character to a 5Γ7 pixel pattern using a custom font
- Date Calculation: Maps each pixel to a specific date (week, day) one year ago
- Backdated Commits: Uses Git's
--dateflag to create commits at calculated dates - Intensity Multiplier: Creates multiple commits per pixel for darker colors
- GitHub Graph: 7 rows (Sun-Sat) Γ 53 columns (weeks)
- Character Size: 5 pixels wide Γ 7 pixels tall
- Spacing: 1 week between characters
- Maximum Text: 8-9 characters (depends on character width)
C:\Users\YourName\github-contribution-repo\
βββ .git\ # Git repository
βββ data.json # Modified with each commit
Use the slider in the GUI (1-10):
- 1: Minimal green (1 commit/pixel)
- 3-5: Medium green (good balance)
- 10: Maximum green (10 commits/pixel)
- Letters: A-Z (automatically converted to uppercase)
- Numbers: 0-9
- Symbols: Space, !, ?, +, -, .
- Future: Add custom characters in
fonts.py
β
Must use a PRIVATE repository
β
Enable "Private contributions" in profile settings
β
Git credentials must be configured (git config user.name and user.email)
β
Wait 5-10 minutes for GitHub to update the graph
This project is for:
- β Learning how Git metadata works
- β Artistic expression and fun experiments
- β Educational purposes
NOT for:
- β Deceiving employers or recruiters
- β Faking open-source contributions
- β Misrepresenting your actual coding activity
π‘ Tip: Senior developers can easily spot these patterns. Use for art, not deception!
Hacking GitHub Contribution Graph/
βββ main.py # GUI application
βββ fonts.py # 5Γ7 pixel font definitions
βββ pattern_calculator.py # Text-to-grid mapping
βββ git_bot.py # Git operations & backdating
βββ requirements.txt # Python dependencies
βββ run.bat # Windows run script
βββ .venv/ # Virtual environment
βββ .gitignore # Git ignore rules
βββ README.md # This file
Edit fonts.py and add your character:
FONTS = {
'β€': [
[0, 1, 0, 1, 0],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[0, 1, 1, 1, 0],
[0, 0, 1, 0, 0],
[0, 0, 0, 0, 0]
]
}# Reinstall dependencies
.venv\Scripts\activate
uv pip install gitpython# Configure Git credentials
git config --global user.name "Your Name"
git config --global user.email "you@example.com"- Enable "Private contributions" in GitHub settings
- Wait 10-15 minutes
- Hard refresh the page (Ctrl+F5)
- Check the repository has commits (
git log)
- Maximum 8-9 characters
- Use shorter text or abbreviations
- Remove spaces to fit more letters
"HELLO" β 5 chars, ~120 commits, 29 weeks
"2026" β 4 chars, ~96 commits, 23 weeks
"CODE" β 4 chars, ~96 commits, 23 weeks
"AI" β 2 chars, ~48 commits, 11 weeks
"LOVE β€" β 6 chars, ~144 commits, 35 weeks
Educational Use Only
This project is provided for learning and artistic purposes. Use responsibly.
Created with:
- Python - Programming language
- Tkinter - GUI framework
- GitPython - Git operations
- uv - Fast Python package installer
Happy Contribution Crafting! π¨β¨
β Star this repo if you created something cool!