Electron Userland
私達は新しい userland セックションを Electron のウェブサイトに追加して、ユーザーが私達の反映するオープンソースのエコシステムを構成する人々、パッケージ、アプリを発見する手助けをしています。
ユーザーランドの起源
Userland は、ソフトウェアコミュニティの人々が一緒にツールやアイデアを共有する場所です。 この用語は Unix のコミュニティに由来しています。カーネルの外で実行されたプログラムを Userland と呼んでいましたが、今日ではそれ以上のことを意味しています。 今日のJavaScript コミュニティの人々が Userland を参照するとき、通常は npm パッケージレジストリ について話しています。 これは実験とイノベーションが多く発生する場所です。一方 Node とJavaScript 言語は(Unixカーネルのように) 比較的小さく安定したコア機能のセット保持しています。
NodeとElectron
Node と同様に、Electron にはコア API の小さなセットがあります。 これらは、マルチプラットフォームのデスクトップアプリケーションの開発に必要な基本的な機能を提供します。 この設計思想により、Electronは過度にルールに則りすぎたものになることなく、柔軟性を持つツールであり続けることが可能になっています。
Userland はコアの対義語であり、ユーザーはElectronの機能を拡張するツールを作成し、共有することができます。
データ収集
私達のエコシステムのトレンドをよりよく理解するために、electron
やelectron-prebuilt
に依存する15,000ものパブリックなGitHubリポジトリからメタデータを分析しました。
私達はGitHub API, とlibraries.io API、それに npm レジストリを使用して、依存関係、開発の依存関係、パッケージ、作者、リポジトリの貢献者、リポジトリからのダウンロード数、リポジトリのフォーク数、夢想家の数の情報を収集しました。
次に、レポートを生成するために以下のデータを使用しました。
- アプリ開発依存関係: Electron アプリで
devDependencies
として最も頻繁にリストされているパッケージ。 - GitHub 貢献者: Electron に関連する GitHub リポジトリに多数貢献した GitHub のユーザー。
- パッケージ依存関係: 他のnpm パッケージによって頻繁に依存している、Electron 関連の npm パッケージ。
- お気にいり Apps: (npm パッケージではない) Electron アプリと多くの夢想家を持つ。
- 最多ダウンロードパッケージ: 多くダウンロードされている Electron 関連の npm パッケージ。
- アプリ依存関係: Electron アプリで
dependencies
として最も頻繁にリストされているパッケージ。 - パッケージの作者: Electron 関連の npm パッケージの最も多作の者。
結果のフィルタリング
アプリの依存関係 やパッケージ、アプリ、リポジトリなどのリストアップしたおきにいりアプリのようなレポートは結果をフィルタするために使用するテキスト入力をもっています。
この入力に入力すると、ページの URL が動的に更新されます。 特定のスライスを表す URL をコピーして他のユーザーと共有できます。
より多くの人の参加
今回の第一号報告は、始まりに過ぎません。 今後も、コミュニティがどのように Electron を構築しているかについてのデータを収集し、ウェブサイトに新しいレポートを追加していく予定です。
このデータを収集し表示するためのツールはすべてオープンソースです。
- electron/electronjs.org Electron のウェブサイト。
- electron/electron-userland-reports: Electron のユーザーランドにあるパッケージ、レポジトリ、ユーザーに関するデータの断片。
- electron/repos-using-electron:
electron
またはelectron-prebuilt
に依存する GitHub 上のすべての公開リポジトリ - electron/electron-npm-packages:
package.json
ファイルにelectron
を記載しているすべての npm パッケージ。
これらのレポートを改善する方法についてのアイデアをお持ちでしたら、ウェブサイトリポジトリまたは上記のリポジトリのいずれかにIssueを立ててお知らせください。
Electron コミュニティのおかげで、今日の userland を作ることができました!