40万を超えるGitHubのプロジェクトを地図化してプロジェクト同士の関係を分かりやすく示した「Map of GitHub」
世界最大のソフトウェア開発プラットフォームであるGitHub上には、記事作成時点で40万を超えるプロジェクトが存在しているとされています。そんなGitHub上のプロジェクトをマッピングした「Map of GitHub」が開発者のAndrei Kashcha氏によって公開されています。
Map of GitHub
https://anvaka.github.io/map-of-github/
「Map of GitHub」にアクセスすると、以下のような画面が表示されます。Kashcha氏によると、「PlusPlus Nation」「Pythonia」「PowerShell Land」などのマップ上の国名は「プログラミング言語」「テクノロジー」「ドメイン」など、プロジェクト同士の共通のテーマを元にChatGPTが生成した架空の国名とのこと。
そのうちの1つである「Cloudderra」を拡大すると、「AWS」「Serverlessland」「NginxLand」などの地名が表示されました。
さらに拡大すると、GitHub上に存在する無数のプロジェクトを示す点が現れます。Kashcha氏によると、これらの点は近ければ近いほど似通ったプロジェクトで、点の大きさはそのプロジェクトが獲得した「Star(スター)」の多さで変化するそうです。
プロジェクトの1つをクリックすると、そのプロジェクトの説明が表示されると共に、関連性のある別のプロジェクトがひもで結ばれます。
また、画面左上のボックスに特定のプロジェクト名を入力すると、マップ上にあるそのプロジェクトの位置にジャンプすることが可能です。今回はコマンドラインツールの「yt-dlp」を検索してみました。
Map of GitHubを用いることで、「obs-studioはyt-dlpと近しい関係にある」「Jellyfinとyt-dlpは関連している」などの情報が一目で判断できるようになります。
Kashcha氏によると、Map of GitHubの構築の際にはGitHubの公開データセットを利用して、2020年1月から2023年3月までの期間中のスター約3億5000万個の内訳を分析したとのこと。また、各プロジェクト間のジャッカード類似度を計算したほか、クラスター分析によるプロジェクトの分割も行われました。
さらに、MapLibreを用いたマップのレンダリングを行うために、データをGeoJSONフォーマットに変換したり、tippecanoeでタイルを生成したりしたとのこと。
Kashcha氏は「私は平面的なマップよりも、Map of GitHubのような視覚的に理解しやすいマップの方が好みです。Map of GitHubのデザインについて意見がある方は是非そのご意見をシェアしてください」と述べています。
なお、Map of GitHubのソースコードは以下のリンク先で公開されています。
anvaka/map-of-github: Inspirational Mapping
https://github.com/anvaka/map-of-github
・関連記事
GitHubがうまくいった理由を共同創設者が解説 - GIGAZINE
GitHubを使う開発者が1億人を突破 - GIGAZINE
GitHub生誕10周年、これまでの功績を振り返るとこんな感じ - GIGAZINE
GitHubコミュニティが世界中に拡大していることを示す年次レポートが公開される - GIGAZINE
GitLabが公開しているZoom会議の動画が再生回数数万回を突破、まさかの使われ方が判明 - GIGAZINE
無料でYouTube・ニコニコ動画・Twitter・Instagramなどの動画を一発でダウンロード&MP3に変換などができる「Vividl」、最強ダウンローダー「yt-dlp」内蔵で初心者でも簡単に使える - GIGAZINE
YouTubeやニコニコ動画などのムービーを最高画質・高音質でダウンロード可能な「yt-dlp」の使い方まとめ、年齢制限ムービーも一発ダウンロード可能 - GIGAZINE
・関連コンテンツ