Grabs Github contribution statistics and presents it in an easily consumable format.
Details of the methods provided for accessing data can be found on RubyDoc.info
A script is provided that uses the module to provide an overview of your contributions:
# githubstats Contribution data for akerl: Today's score: 9 Current streak: 32 Longest streak: 32 High score: 50 on 2013-07-14 Quartile boundaries: [0, 3, 8, 12, 50] ▁▁▁▆▁▂▁▁▅▄▁▃▂▁▁▃▁▁▁▁▄▁▂▃█▇▃▁▃▃▂▁▃▂▁▁▁▁▁▁▂▁▁▁▁▂▂▁▃▁▂▁▆▃▂▂▁▁▁▅
The graph is generated using spark (https://github.com/holman/spark) if you have it installed.
Initializing a new Contributions object can be done as so:
require 'githubstats' stats = GithubStats.new('akerl') puts stats.data.today # Prints today's current score
The username is taken from the argument passed to .new(). If no username is provided, it will try to use Rugged (https://github.com/libgit2/rugged) to load the Github username from your git configuration. If Rugged isn't installed or no Github username is set, it falls back to the current session's user, pulled via ENV.
# whoami akerl # githubstats Contribution data for akerl: Today's score: 9 Current streak: 32 Longest streak: 32 High score: 50 on 2013-07-14 Quartile boundaries: [0, 3, 8, 12, 50] ▁▁▁▆▁▂▁▁▅▄▁▃▂▁▁▃▁▁▁▁▄▁▂▃█▇▃▁▃▃▂▁▃▂▁▁▁▁▁▁▂▁▁▁▁▂▂▁▃▁▂▁▆▃▂▂▁▁▁▅ # githubstats mikegrb Contribution data for mikegrb: Today's score: 0 Current streak: 0 Longest streak: 80 High score: 23 on 2013-09-08 Quartile boundaries: [0, 2, 5, 8, 23]
gem install githubstats
- Jon Chen for providing encouragement while borrowing my code
GithubStats is released under the MIT License. See the bundled LICENSE file for details.