[Ruby]Githubのcontribution数を取得する

都内でエンジニアしている[@emono](https://twitter.com/emono_dev/)といいます。
Githubのcontribution数を数える[contribution_count](https://rubygems.org/gems/contribution_count)というGemを作ったので、使い方メモです。

- [github](https://github.com/emono/contribution_count/)

## 使い方
```bash

$ gem install contribution_count
```

```ruby
# requireする
irb(main):001:0> require 'contribution_count'
=> true
# github名を代入しておく
irb(main):002:0> name = "emono"
=> "emono"
# 取得できるmaxの１年分を取得
irb(main):006:0> ContributionCount.new(name).all
=> {"2018-05-20"=>0, "2018-05-21"=>0, "2018-05-22"=>0, "2018-05-23"=>6, "2018-05-24"=>0, "2018-05-25"=>0, "2018-05-26"=>0, "2018-05-27"=>0, "2018-05-28"=>3, "2018-05-29"=>0, "2018-05-30"=>0, "2018-05-31"=>2, "2018-06-01"=>0, "2018-06-02"=>0, "2018-06-03"=>6, "2018-06-04"=>8, "2018-06-05"=>0, "2018-06-06"=>0, "2018-06-07"=>4, "2018-06-08"=>8, "2018-06-09"=>0, "2018-06-10"=>0, "2018-06-11"=>3, "2018-06-12"=>1, "2018-06-13"=>3, "2018-06-14"=>11, "2018-06-15"=>5, "2018-06-16"=>3, "2018-06-17"=>0, "2018-06-18"=>5, "2018-06-19"=>13, "2018-06-20"=>1, "2018-06-21"=>8, "2018-06-22"=>5, "2018-06-23"=>6, "2018-06-24"=>2, "2018-06-25"=>3, "2018-06-26"=>0, "2018-06-27"=>0, "2018-06-28"=>0, "2018-06-29"=>1, "2018-06-30"=>0, "2018-07-01"=>0, "2018-07-02"=>2, "2018-07-03"=>2, "2018-07-04"=>0, "2018-07-05"=>0, "2018-07-06"=>0, "2018-07-07"=>0, "2018-07-08"=>0, "2018-07-09"=>3, "2018-07-10"=>2, "2018-07-11"=>4, "2018-07-12"=>0, "2018-07-13"=>4, "2018-07-14"=>0, "2018-07-15"=>0, "2018-07-16"=>0, "2018-07-17"=>5, "2018-07-18"=>2, "2018-07-19"=>4, "2018-07-20"=>4, "2018-07-21"=>0, "2018-07-22"=>1, "2018-07-23"=>6, "2018-07-24"=>2, "2018-07-25"=>0, "2018-07-26"=>3, "2018-07-27"=>3, "2018-07-28"=>0, "2018-07-29"=>0, "2018-07-30"=>4, "2018-07-31"=>4, "2018-08-01"=>0, "2018-08-02"=>0, "2018-08-03"=>2, "2018-08-04"=>1, "2018-08-05"=>6, "2018-08-06"=>6, "2018-08-07"=>1, "2018-08-08"=>1, "2018-08-09"=>1, "2018-08-10"=>1, "2018-08-11"=>0, "2018-08-12"=>9, "2018-08-13"=>0, "2018-08-14"=>1, "2018-08-15"=>1, "2018-08-16"=>1, "2018-08-17"=>0, "2018-08-18"=>0, "2018-08-19"=>0, "2018-08-20"=>1, "2018-08-21"=>3, "2018-08-22"=>4, "2018-08-23"=>5, "2018-08-24"=>3, "2018-08-25"=>0, "2018-08-26"=>3, "2018-08-27"=>2, "2018-08-28"=>5, "2018-08-29"=>3, "2018-08-30"=>1, "2018-08-31"=>0, "2018-09-01"=>0, "2018-09-02"=>0, "2018-09-03"=>3, "2018-09-04"=>1, "2018-09-05"=>5, "2018-09-06"=>0, "2018-09-07"=>0, "2018-09-08"=>0, "2018-09-09"=>0, "2018-09-10"=>0, "2018-09-11"=>0, "2018-09-12"=>4, "2018-09-13"=>0, "2018-09-14"=>3, "2018-09-15"=>0, "2018-09-16"=>0, "2018-09-17"=>2, "2018-09-18"=>1, "2018-09-19"=>2, "2018-09-20"=>0, "2018-09-21"=>0, "2018-09-22"=>6, "2018-09-23"=>1, "2018-09-24"=>0, "2018-09-25"=>0, "2018-09-26"=>1, "2018-09-27"=>3, "2018-09-28"=>0, "2018-09-29"=>1, "2018-09-30"=>3, "2018-10-01"=>1, "2018-10-02"=>1, "2018-10-03"=>3, "2018-10-04"=>2, "2018-10-05"=>3, "2018-10-06"=>0, "2018-10-07"=>0, "2018-10-08"=>1, "2018-10-09"=>10, "2018-10-10"=>8, "2018-10-11"=>1, "2018-10-12"=>2, "2018-10-13"=>0, "2018-10-14"=>0, "2018-10-15"=>3, "2018-10-16"=>4, "2018-10-17"=>3, "2018-10-18"=>1, "2018-10-19"=>1, "2018-10-20"=>1, "2018-10-21"=>6, "2018-10-22"=>3, "2018-10-23"=>2, "2018-10-24"=>2, "2018-10-25"=>1, "2018-10-26"=>4, "2018-10-27"=>6, "2018-10-28"=>6, "2018-10-29"=>5, "2018-10-30"=>5, "2018-10-31"=>2, "2018-11-01"=>3, "2018-11-02"=>0, "2018-11-03"=>6, "2018-11-04"=>1, "2018-11-05"=>5, "2018-11-06"=>5, "2018-11-07"=>6, "2018-11-08"=>1, "2018-11-09"=>1, "2018-11-10"=>1, "2018-11-11"=>2, "2018-11-12"=>1, "2018-11-13"=>10, "2018-11-14"=>4, "2018-11-15"=>1, "2018-11-16"=>0, "2018-11-17"=>0, "2018-11-18"=>0, "2018-11-19"=>2, "2018-11-20"=>0, "2018-11-21"=>0, "2018-11-22"=>1, "2018-11-23"=>2, "2018-11-24"=>0, "2018-11-25"=>0, "2018-11-26"=>0, "2018-11-27"=>6, "2018-11-28"=>3, "2018-11-29"=>1, "2018-11-30"=>2, "2018-12-01"=>0, "2018-12-02"=>1, "2018-12-03"=>8, "2018-12-04"=>4, "2018-12-05"=>7, "2018-12-06"=>1, "2018-12-07"=>2, "2018-12-08"=>1, "2018-12-09"=>0, "2018-12-10"=>1, "2018-12-11"=>4, "2018-12-12"=>1, "2018-12-13"=>5, "2018-12-14"=>0, "2018-12-15"=>0, "2018-12-16"=>0, "2018-12-17"=>0, "2018-12-18"=>1, "2018-12-19"=>0, "2018-12-20"=>1, "2018-12-21"=>3, "2018-12-22"=>2, "2018-12-23"=>8, "2018-12-24"=>0, "2018-12-25"=>2, "2018-12-26"=>2, "2018-12-27"=>1, "2018-12-28"=>1, "2018-12-29"=>1, "2018-12-30"=>11, "2018-12-31"=>1, "2019-01-01"=>0, "2019-01-02"=>9, "2019-01-03"=>0, "2019-01-04"=>1, "2019-01-05"=>1, "2019-01-06"=>1, "2019-01-07"=>1, "2019-01-08"=>2, "2019-01-09"=>4, "2019-01-10"=>1, "2019-01-11"=>0, "2019-01-12"=>3, "2019-01-13"=>3, "2019-01-14"=>3, "2019-01-15"=>2, "2019-01-16"=>1, "2019-01-17"=>0, "2019-01-18"=>1, "2019-01-19"=>0, "2019-01-20"=>1, "2019-01-21"=>4, "2019-01-22"=>1, "2019-01-23"=>0, "2019-01-24"=>0, "2019-01-25"=>0, "2019-01-26"=>4, "2019-01-27"=>2, "2019-01-28"=>1, "2019-01-29"=>2, "2019-01-30"=>0, "2019-01-31"=>2, "2019-02-01"=>1, "2019-02-02"=>3, "2019-02-03"=>1, "2019-02-04"=>0, "2019-02-05"=>3, "2019-02-06"=>1, "2019-02-07"=>6, "2019-02-08"=>4, "2019-02-09"=>3, "2019-02-10"=>0, "2019-02-11"=>0, "2019-02-12"=>2, "2019-02-13"=>1, "2019-02-14"=>0, "2019-02-15"=>0, "2019-02-16"=>4, "2019-02-17"=>0, "2019-02-18"=>1, "2019-02-19"=>0, "2019-02-20"=>0, "2019-02-21"=>1, "2019-02-22"=>0, "2019-02-23"=>0, "2019-02-24"=>1, "2019-02-25"=>1, "2019-02-26"=>0, "2019-02-27"=>0, "2019-02-28"=>0, "2019-03-01"=>1, "2019-03-02"=>0, "2019-03-03"=>0, "2019-03-04"=>1, "2019-03-05"=>1, "2019-03-06"=>0, "2019-03-07"=>3, "2019-03-08"=>0, "2019-03-09"=>0, "2019-03-10"=>0, "2019-03-11"=>0, "2019-03-12"=>3, "2019-03-13"=>0, "2019-03-14"=>1, "2019-03-15"=>4, "2019-03-16"=>0, "2019-03-17"=>2, "2019-03-18"=>1, "2019-03-19"=>3, "2019-03-20"=>1, "2019-03-21"=>0, "2019-03-22"=>2, "2019-03-23"=>3, "2019-03-24"=>7, "2019-03-25"=>3, "2019-03-26"=>1, "2019-03-27"=>8, "2019-03-28"=>2, "2019-03-29"=>1, "2019-03-30"=>0, "2019-03-31"=>0, "2019-04-01"=>7, "2019-04-02"=>8, "2019-04-03"=>2, "2019-04-04"=>2, "2019-04-05"=>0, "2019-04-06"=>0, "2019-04-07"=>0, "2019-04-08"=>4, "2019-04-09"=>2, "2019-04-10"=>0, "2019-04-11"=>1, "2019-04-12"=>0, "2019-04-13"=>0, "2019-04-14"=>0, "2019-04-15"=>6, "2019-04-16"=>10, "2019-04-17"=>10, "2019-04-18"=>2, "2019-04-19"=>7, "2019-04-20"=>1, "2019-04-21"=>6, "2019-04-22"=>2, "2019-04-23"=>4, "2019-04-24"=>3, "2019-04-25"=>2, "2019-04-26"=>1, "2019-04-27"=>0, "2019-04-28"=>2, "2019-04-29"=>5, "2019-04-30"=>2, "2019-05-01"=>0, "2019-05-02"=>0, "2019-05-03"=>2, "2019-05-04"=>0, "2019-05-05"=>9, "2019-05-06"=>18, "2019-05-07"=>15, "2019-05-08"=>26, "2019-05-09"=>5, "2019-05-10"=>6, "2019-05-11"=>7, "2019-05-12"=>6, "2019-05-13"=>4, "2019-05-14"=>8, "2019-05-15"=>8, "2019-05-16"=>21, "2019-05-17"=>5, "2019-05-18"=>0, "2019-05-19"=>12}
# 当日分のcontribution数を取得
irb(main):007:0> ContributionCount.new(name).today
=> 12
# 前日のcontribution数を取得
irb(main):008:0> ContributionCount.new(name).yesterday
=> 0
# 日付指定のcontribution数を取得
irb(main):009:0> ContributionCount.new(name).date("2019-01-01")
=> 0
# 今日contributionしたかを確認する
ContributionCount.new(name).contribution_today?
=> true
# 指定の日付にcontributionしたかを確認する
ContributionCount.new(name).contribution?("yyyy-mm-dd")
```

以上です。よかったら使ってみてください〜。