Electron 用户空间
我们已在 Electron 网站上新增了一个用户空间部分,以帮助用户发现构成我们蓬勃发展的开源生态系统的人员、软件包和应用。
用户空间的起源
用户空间是软件社区中人们聚集在一起分享工具和想法的地方。该术语起源于 Unix 社区,在那里它指代任何在内核外部运行的程序,但今天它意味着更多。当今 JavaScript 社区中的人们提到用户空间时,他们通常指的是 npm 包注册表。这是大多数实验和创新发生的地方,而 Node 和 JavaScript 语言(像 Unix 内核一样)则保留了一组相对较小且稳定的核心功能。
Node 与 Electron
与 Node 类似,Electron 拥有一小部分核心 API。这些 API 提供了开发多平台桌面应用所需的基本功能。这种设计理念使 Electron 能够保持作为一个灵活的工具,而不会对其使用方式进行过多规定。
用户空间是“核心”的对应,它使用户能够创建和分享扩展 Electron 功能的工具。
数据收集
为了更好地了解我们生态系统的趋势,我们分析了 15,000 个依赖于 electron
或 electron-prebuilt
的公共 GitHub 仓库的元数据。
我们使用 GitHub API、libraries.io API 和 npm 注册表来收集有关依赖项、开发依赖项、被依赖项、包作者、仓库贡献者、下载量、Fork 数量、Star 数量等信息。
然后我们使用这些数据生成了以下报告
- 应用开发依赖:Electron 应用中作为
devDependencies
最常列出的软件包。 - GitHub 贡献者:为众多 Electron 相关 GitHub 仓库做出贡献的 GitHub 用户。
- 包依赖:经常被其他 npm 包依赖的 Electron 相关 npm 包。
- 星标应用:拥有大量 Star 的 Electron 应用(非 npm 包)。
- 下载量最大的包:下载量很大的 Electron 相关 npm 包。
- 应用依赖:Electron 应用中作为
dependencies
最常列出的软件包。 - 包作者:Electron 相关 npm 包的最多产作者。
筛选结果
像 应用依赖 和 星标应用 这样列出软件包、应用和仓库的报告都有一个文本输入框,可用于筛选结果。
当您在此输入框中输入时,页面 URL 会动态更新。这允许您复制表示特定用户空间数据切片的 URL,然后与他人分享。
更多内容即将推出
第一批报告仅仅是个开始。我们将继续收集社区如何构建 Electron 的数据,并将向网站添加新的报告。
所有用于收集和显示这些数据的工具都是开源的
- electron/electronjs.org:Electron 网站。
- electron/electron-userland-reports:关于 Electron 用户空间中包、仓库和用户的数据切片。
- electron/repos-using-electron:GitHub 上所有依赖于
electron
或electron-prebuilt
的公共仓库。 - electron/electron-npm-packages:所有在其
package.json
文件中提及electron
的 npm 包。
如果您对如何改进这些报告有任何想法,请通过在网站仓库中提交 issue 或在上述任何仓库中告诉我们。
感谢 Electron 社区的您,是您成就了今天的用户空间!