hubba-reports

hubba-reports gem - auto-generate github statistics / analytics reports from github api data (stars, timeline, traffic, top pages, top referrers, etc.)

Usage

Step 0: Data, Data, Data

See the hubba gem on how to collect github data (daily, weekly, monthly, etc.).

Statistics / reports

Hubba has about a dozen built-in reports (for now):

Look into the /reports directory for all reports and, yes, you can - on how to code your very own.

Generate statistic / reports

If you only generate a single built-in report, use:

require 'hubba/reports'

report = Hubba::ReportSummary.new( './repos.yml' )
report.save( './SUMMARY.md' )

If you generate more reports, (re)use the in-memory statistics cache / object:

stats = Hubba.stats( './repos.yml' )

report = Hubba::ReportSummary.new( stats )
report.save( './SUMMARY.md' )

report = Hubba::ReportStars.new( stats )
report.save( './STARS.md' )

report = Hubba::ReportTimeline.new( stats )
report.save( './TIMELINE.md' )

report = Hubba::ReportUpdates.new( stats )
report.save( './UPDATES.md' )

# ...

Report Examples

Report Example - Summary

A-Z list of your repos by orgs with stars and size in kb. Results in:


geraldb (11)

austria ★1 (552 kb) · catalog ★3 (156 kb) · chelitas ★1 (168 kb) · geraldb.github.io ★1 (520 kb) · logos ★1 (363 kb) · sandbox ★2 (529 kb) · talks ★200 (16203 kb) · web-proxy-win ★8 (152 kb) · webcomponents ★1 (164 kb) · webpub-reader ★3 (11 kb) · wine.db.tools ★1 (252 kb)


(Live Example - {SUMMARY.md})

Report Example - Stars

Your repos ranked by stars. Results in:


  1. ★2936 openblockchains/awesome-blockchains (2514 kb)

  2. ★851 planetjekyll/awesome-jekyll-plugins (148 kb)

  3. ★604 factbook/factbook.json (7355 kb)

  4. ★593 openfootball/football.json (2135 kb)

  5. ★570 openmundi/world.db (1088 kb)

  6. ★552 openblockchains/programming-blockchains (552 kb)

  7. ★547 mundimark/awesome-markdown (83 kb)

  8. ★532 planetjekyll/awesome-jekyll (110 kb)

  9. ★489 cryptocopycats/awesome-cryptokitties (4154 kb)

  10. ★445 openfootball/world-cup (638 kb)


(Live Example: {STARS.md})

Report Example - Timeline

Your repos in reverse chronological order by creation. Results in:


2020

9

6


(Live Example: {TIMELINE.md})

Report Example - Updates

Your repos in reverse chronological order by last commit. Results in:


committed / pushed / updated / created


(Live Example: {UPDATES.md})

That's all for now.

Installation

Use

gem install hubba-reports

or add the gem to your Gemfile

gem 'hubba-reports'

License

The hubba scripts are dedicated to the public domain. Use it as you please with no restrictions whatsoever.