ライブラリ選定のときに使えるツールあれこれ
自分が使ってるやつを紹介します。
GitHub Star History
指定したGitHubリポジトリのスターの増加数をグラフで見れるサイトです。
たとえば、👇の3つのReactのUIライブラリを例に見てみます。
- mui
- chakra-ui
- shadcn-ui
▲https://star-history.com/#shadcn-ui/ui&chakra-ui/chakra-ui&mui/material-ui&Date
こんな感じで、一目でライブラリの人気度合いをざっくり比較できます。
使い方
テキストボックスに、比較したいライブラリのGitHubリポジトリURLを入力するだけです。
また、「Align timeline」にチェックを入れると、グラフのスタートを揃えれます。
たとえば、Prisma ORMとDrizzle ORMを比較するとPrismaの方が圧倒的に見えますが、スタートを揃えると「リリースしてからの勢いは同じくらいなんだな」が分かります👇
OSS Insight
「OSS Insight」はスター数以外にも、以下のような指標も確認できるサイトです。
- issue数
- プルリク数
- コミット数
たとえば以下のページで、HonoとExpressを比較できます。
honojs/hono vs expressjs/express | OSSInsight
開発の勢いをもっとも可視化しているのは「プルリク数」だと思うので、最低限これだけ見ると良いかもです👇
▲上がExpressで、下がHono。PRのトータル数で言うと、すでにHonoのほうが多いっぽい。
他にも「このジャンルではどれが熱いのか?」も調べられます。
たとえば、Webフレームワークのページを見ると、どのWebフレームワークが最近熱いのかが分かります👇
このページを見ると、最近だと👇の4つが激アツなことが分かります。
- Hono:JavaScriptのWebフレームワーク
- axum:RustのWebフレームワーク
- refine:Reactで管理画面を作れるよ〜なフレームワーク
- payload:Next.jsでHeadless CMSを作れるよ〜なフレームワーク
npm trends
npm trendsは、実際にnpmからインストールされた数をグラフで比較できるサイトです👇
「実際問題、本当に使われてるの?」が分かるので、人気を図る指標としては1番確実かもしれません。
roadmap.sh
roadmap.shは、「このロードマップ通りに行けばその道のプロになれるよ」を見れるサイトです👇
▲このようにいろいろなロードマップがあります
たとえば、Reactのロードマップ通りにすればReactエンジニアになれる‥という感じです。
そして、このロードマップの中に「現状はこれを使っとけば良いと思うよ」が書かれています。
たとえば、Reactの状態管理ライブラリってどれを使えばいいんだろう?と迷ったとき、Reactのロードマップを見ると「Jotai」「Zustand」がオススメと書かれています👇
▲🟣は1番オススメ、🟢は2番目にオススメ
ほかにも、たとえば「ReactとVueのどちらを学習すればいいんだろう?」と迷ったとき、フロントエンドのロードマップを見ると「React」がオススメと書かれています👇
こんな感じで「何も分からないので最低限の指針がほしい」という場合に参考にできます。
特に初心者のうちは、何がなんだか分からないという感じだと思うので、ここに書いている技術から選べば大きなミスを避けやすいと思います。
ちなみに「このサイトって信用できるの?」と思うかもですが、世界で6番目にスターが多いリポジトリなので、一応は信用できるかもです。
まとめ
自分の場合、以下のように使うことが多いです。
世界的には何が人気なんだろう?
→roadmap.sh
AとBとCだと、どれが人気なんだろう?
→GitHub Star History
AとBだと、どちらが人気なんだろう?
→OSS Insight
実際使われてるのかな?
→npm trends
おわり
Discussion