Help us understand the problem. What is going on with this article?

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というオプションもあるが、どのような基準なのかよく分からない。 

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした