Edited at

RubyGemsの探し方

More than 3 years have passed since last update.


Ruby Toolbox

The Ruby Toolboxはgemをカテゴリ別に分類して人気度順に並べたサイト。大まかな開発状況の推移なども分かる。


awesome-ruby

Sdogruyol/awesome-rubyawesome-phpなどのRuby版。各カテゴリの優れたgemを短い文章で解説する。GitHubで管理されている。


RubyGems.org

RubyGems.orgはgemのホスティングサイト。gem installからインストールできるgemは基本的にここに登録されている。

RubyGems.orgのサイト上の検索システムやgem searchでは、rubygemsのパッケージ名でしか検索できないので、キラキラネームが付いたrubygemsを見逃す可能性がある。

サードパーティーの検索サービスがいくつかある。



  • libraries.io


    • platformにRubygemsを指定する1とrubygemのみを検索できる

    • descriptionなども検索の対象になる

    • 検索結果にはdescriptionのほか、バージョン番号、最終更新日、GitHubのスターの数、ライセンスが表示される

    • GitHubのスターの数、依存されているライブラリの数、最終更新日時、公開日時などでソートできる2

    • ライセンスで絞り込める

    • 検索結果をフィードで取得できる




  • Ruby Gem Search: Search Gems


    • 検索条件を細かく指定できる(gemの説明文(info)、ライセンス、作者名、ダウンロード数、依存ライブラリなど)

    • 結果をダウンロード数などでソートできる

    • 検索条件の指定が煩雑で、検索結果ページにはgemの説明文が表示されない



  • Google




GitHub

RubyGems.orgには登録されていないが、GitHubなどでソースが公開されているgemもある。https://github.com/search?q=foo&type=Repositories&l=Rubyのように言語をRubyに絞ってGitHubのリポジトリ検索を行うと効率よく探せる。(その他の有用なクエリについてはRuby - gemを探す知恵 - Qiitaで詳しく解説されている。)

ただし、拡張ライブラリはRuby以外のコードの比率が高いので、使用言語がRubyと判定されないケースがある(例: flori/json)。この場合はRubyに絞るとヒットしない。


その他

特に実装に手間がかかるジャンルでは、gemのREADMEや作者のブログ記事などで類似のgemがいくつか紹介されていることもある。それぞれのgemの特徴の比較などが付いている場合もあるので、ドキュメントやコードを読んで検討する手間を省くために積極的に活用するとよい。


See also



This document is licensed under
CC0.





  1. nokogiriのように、拡張ライブラリはRuby以外の言語に分類されることがある。languageにRubyを指定するとそのようなgemが検索結果から外れる。 



  2. SourceRankというオプションもあるが、どのような基準なのかよく分からない。