This tool automatically generates insightful data visualizations and key statistics for your repositories, updating your GitHub profile on every push. It seamlessly integrates with your existing profile and appends new information at the bottom so your content stays intact. The graphs that are generated are stitched together in a gif so your profile can remain concise and clean.
Analyze, generate and display visuals for your code in relation to:
- Repositories by commits, line count (of python code)
- A heatmap of your commit activity by day and time
- A word cloud of commit messages
- File type count
- Libraries used (Python)
- Construct counts (count of Loops, classes, control flow statements, async functions etc...)
- Highlights of your most recent closed PRs and commits
Keep your profile engaging with real-time data, without any extra work—everything runs automatically through GitHub Actions.
Making a Github API token
TOKEN=YOUR_API_TOKEN
Saving Github API token for the github action
Clone this repo or save it from github and prepare your profile repo
Open the folder you just saved this repo to, as well as the folder containing your profile repo. Move the highlighted files
---
to the end of the file.
Make sure --- doesnt appear anywhere else in your markdown. This is how the python script identifies the end of your readme.md to append / update data
(Optional) Test the data gen locally
go to your github profile page repo in your terminal and run:
python Generator\utils\data_scrape.py
This may take a few minutes depending on how many repos youve uploaded

local_run.bat
mergedprs.py must be run first
python Generator\utils\mergedprs.py
these can be run in any order
python Generator\utils\graphing\construct_counts_graph.py
python Generator\utils\graphing\line_prs_graph.py
python Generator\utils\graphing\lines_graph.py
python Generator\utils\graphing\top_libraries_graph.py
python Generator/utils/graphing/word_cloud.py
Generator/utils/graphing/commit_heatmap.py
python Generator\utils\graphing\file_types_bar_graph.py
then run
python Generator\utils\gifmaker.py
and finally run
python Generator\readme.py
Push to your profile repo
This pull isnt necessary on the initial commit of this, but after this first commit github Actions will be updating your readme automatically, meaning the readme.md will have changes that our local repo doesnt have. To resolve this any time we want to re-run our data generation, we should pull.
git pull
git add .
git commit -m "Updating profile"
git push
Open your github profile repo and navigate to the build of your action you just initialized when you pushed
This will always take a few minutes if you have a lot of repos.















