You can use akerl’s excellent GithubChart tool from GitHub to create contribution graphs using any data you want. Compare my current GitHub streak:
versus all of my repos, public and private:
(You’ll notice differences on the days that I closed issues and opened pull requests through GitHub).
How to create contribution graphs for private repos:
You can use a tool like fakehubstats to generate JSON data about local repositories and feed it into GithubChart:
fakehubstats.pl /path/to/lots/of/repos/* | githubchart -i - /wherever/you/want/to/save.svg
You can run gem install githubchart
, and fakehubstats.pl requires the JSON and DateTime perl modules. On Debian, it’s as easy as running apt-get install libdatetime-perl libjson-perl
. You can, of course, use your preferred method of installing perl modules too!
The fakehubstats README includes two one-liners to help explore and intermingle the GitHub data with your own.There’s a jq command that combines both JSON files by using the maximum value of either day. This isn’t perfect, but should get you a square on your custom chart for days where you did GitHub-specific maintenance.
Other uses
With this new feature you can turn lots of streak-like data into progress charts. You can take habit-related data and turn it into a contribution graph, or you could turn your web history into a depressing chart (how many times did I go on HackerNews yesterday?). You could take savings data and use the contribution amounts as dollars saved per-day. Try it out!