Fake out your GitHub activity graph with this designer tool!

Customize your GitHub activity graph however you like using this drawing tool. It generates a set of commits that seeds the activity graph by changing GIT_AUTHOR_DATE and GIT_COMMITTER_DATE. Free to use at your own risk - for entertainment purposes only.

My activity graph used to be a barren smattering of yellow and green dots with wide swaths of grey. To date in my career my work has been done under NDA, which means I don't have an opportunity to share my code publicly. Thanks to this tool we can all have a github activity graph that looks awesome!

1) Draw Your Design:

  • Pick the color you want to use. Colors are based on commit frequency which this tool takes care of.
  • Click / drag to fill each day with the selected color.
  • Your design is automatically saved in your browser's local storage as you work on it.
Select Color:

2) Build The Commits:

  • The GitHub graph shows the past year of activity, so the default start date is one year ago.
  • "Max Daily Commits" represents the number of commits in the darkest colored squares. Increase it to ensure any other public commits have less of an impact on the pattern.
  • Only one year of commits is visible on GitHub at a time. This tool lets you draw 2 years worth of commits. If you want it to go longer, just do it again with the start date +2 years.
  • The commits start on the previous Sunday from the date selected.
Max Daily Commits: Start Week: (yyyy-mm-dd)

(needed to generate commits with varying content)

3) Push It!

  • Create a new public repo on github.
  • Create a new local directory and link to the github repo.
    $ mkdir myproject && cd myproject
    $ git init
    $ git remote add oriin git@github.com:{YOUR USER}/{YOUR REPO NAME}.git
  • Copy & paste the generated script into a file in that directory and run it.
    • *nix / cygwin: chmod +x myfile.sh && myfile.sh
    • Windows: works best in a cygwin or mingw64 git bash shell, save as myfile.sh, then run the file `source myfile.sh`
  • Push changes!
    $ git push -u origin master
  • Hate it? Just delete the repo from your account and wait for the graph to update.
  • I've noticed when I try graphs with lots of points github sometimes cuts it off. I've had success breaking up the script into separate pushes, but I don't know what is going on exactly. Your mileage may vary.

Version History:
  • 1.0 Released 4/26/2015
  • 1.1 Released 7/3/2016

    Github stopped counting empty commits on the activity graph?!
    v1.1 fixes that by adding a random file change as part of each commit.
    The new 'platform' option will update 'file.txt' with a random string each commit. On Windows, it is the date to nano-second resolution (open to one liners that actually work).
    • MacOS:
      cat /dev/urandom | env LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1
    • Linux:
      cat /dev/urandom | env LC_CTYPE=C tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1
    • Windows:
      date --rfc-3339='ns'

    Please let me know via the contact link below if you run into trouble with this approach.
Inspired by: