Ever wanted to light up your GitHub contributions graph? This Python based repo has several tools to help you!
💡 Great for testing, demonstrations, or simply boosting your green square game.
- 🔁 Generates up to N commits per day
- 📅 Fills up to 365 days of history
- ⌛ Commits are backdated using
GIT_AUTHOR_DATEandGIT_COMMITTER_DATE - 🛠️ Fully customizable
- ✅ Uses plain Python and Git — no external libraries
- 💻 GUI version and CLI version recommend using 'gui.py' first
- Clones your GitHub repository
- Simulates random activity by creating a file and committing to it
- Backs up each commit with a fake historical date
- Pushes it all to GitHub — your graph updates within minutes
💡 Prefer a point-and-click interface? Use
gui.py!
The GUI version lets you configure the script visually with:
- Input fields for GitHub repo, email, commit range, and more
- Git branch selection
- Scrollable live log output to monitor progress
- A “Run Script” button to launch the automation
- Create a public repository via Github.com.
- Download this repository to your machine.
- Ensure you have Python and Git installed on your machine.
- Open a terminal and run:
python gui.py- Fill out text inputs:
Github Repo URL = "https://github.com/YOUR_USERNAME/github-activity.git" # change this to repo url
Local Repo Name = "temp-repo" #leave or change to any name you want
Username = "YOUR_USERNAME" # change this
Email = "your.email@example.com" # change this
Days Back = 365 # configure how many days history from current to write commits to (max 365)
Max commits Per Day = 3 # configure this to the max desired commits per day (recommend no more than 15)- Click "Run script" button
- Check commit chart (may take a few minutes to update)
Go to github.com/new and create a public repo (e.g. github-activity).
Do not initialize it with a README.
Clone this repo or copy contribute.py into your working directory.
Then edit the top of the script to match your info:
GITHUB_REPO = "https://github.com/YOUR_USERNAME/github-activity.git" # change this to repo url
LOCAL_REPO = "temp-repo" #leave or change to any name you want
USER_NAME = "YOUR_USERNAME" # change this
USER_EMAIL = "your.email@example.com" # change this
DAYS_BACK = 365 # configure how many days history from current to write commits to (max 365)
MAX_COMMITS_PER_DAY = 3 # configure this to the max desired commits per day (recommend no more than 15)Open a terminal and run:
python contribute.py✅ If everything is configured correctly:
A new folder (temp-repo) will be created
Commits will be made with backdated timestamps
All commits will be pushed to GitHub
🕒 Wait a few minutes, then check your GitHub profile to see the new green squares on your contributions chart!
If you get an error first make sure that your github username and email are configured correctly on your local machine:
Use git config command to configure email and name.
git config --global user.name "Your name"
git config --global user.email "your.email@example.com" #replace with github profile emailIf this does not work, consult ChatGPT like I did. Good luck!

