跳转到主要内容

2025 年谷歌编程之夏

·6 分钟阅读

Electron 再次被接纳为 Google Summer of Code (GSoC) 2025 的指导组织!Google Summer of Code 是一个全球性项目,旨在吸引新的贡献者加入开源软件开发。

有关该项目的更多详细信息,请访问 Google 的Summer of Code 主页

关于我们

Electron 是一个 JavaScript 框架,用于使用 Web 技术构建跨平台桌面应用程序。Electron 核心框架是一个使用 ChromiumNode.js 构建的编译二进制可执行文件,主要用 C++ 编写。

除了 Electron 核心仓库之外,我们还维护了几个项目来支持 Electron 生态系统,包括:

作为 GSoC 贡献者,您将有机会与 Electron 的一些核心贡献者在 github.com/electron 旗下的众多项目之一上进行协作。

申请前

如果您对 Electron 不太熟悉,我们建议您首先阅读 文档 并尝试 Electron Fiddle 中的一些示例。

要了解有关分发 Electron 应用程序的更多信息,请尝试使用 Electron Forge 创建一个示例应用程序。

npm init electron-app@latest my-app

在对代码稍加熟悉后,欢迎加入 Electron Discord 服务器上的对话。

信息

如果这是您第一次参加 Google 编程之夏,或者您是开源领域的新手,我们建议您在与社区互动之前阅读 Google 的 贡献者指南

项目贡献

我们鼓励您查看与您感兴趣的项目想法相关的任何存储库。进行研究的一种方法是报告错误、整理现有问题或提交拉取请求以做出贡献。这样做是有效掌握我们代码库的实践方式,但并非提案提交的强制要求。一份精心制作的提案应该能够展示您对代码的理解,而无需提及过去的贡献。

如果您想在提交提案之前为 Electron 做出贡献,这里有一些提示:

  1. 提交贡献时,请提供描述性的问题或 PR 描述。无论代码本身如何,在贡献的书面部分下功夫都向我们表明您可以在协作环境中成为一名有效的沟通者。
  2. 我们随时欢迎针对未解决问题的 PR。您无需在问题下评论询问维护者是否可以将问题分配给您。请注意,如果您需要完善解决方案想法,我们仍然鼓励您在问题上讨论潜在的解决方案,但严格询问您是否可以处理某事的评论是多余的,并且会增加问题跟踪器的噪音。
  3. 低质量的项目贡献(例如无效的问题报告、仓库 README 中无关紧要的措辞更改或前端代码中微小的样式更改)将对您的最终提案产生负面影响,因为它们会占用有限的维护者时间,并且不会对 Electron 项目产生任何净收益。
  4. 虽然 AI 编码助手可以成为调试和理解新概念的有效工具,但我们强烈不鼓励直接复制/粘贴 AI 生成输出的贡献。这些贡献通常质量低下,维护者清理 LLM 生成的代码通常比我们直接拒绝 PR 更费力。

撰写您的提案

有兴趣与 Electron 合作吗?首先,请查看我们准备的七个项目想法草案。所有列出的想法都开放提案。

如果您有一个列表中没有的独特想法,我们愿意考虑,但请确保您的提案详细且彻底地概述。如有疑问,我们建议您坚持我们列出的想法。

您的申请应包括:

  • 一份详细的提案,概述您计划在夏季实现的目标。
  • 您作为开发者的背景。如果您有简历,请附上一份副本。否则,请告诉我们您过去的技术经验。
    • 在某些领域缺乏经验不会使您失去资格,但这将有助于我们的导师制定计划,以最好地支持您,并确保您的暑期项目取得成功。

此处是关于 Electron 申请需要提交内容的详细指南请直接将提案提交至 Google 编程之夏门户网站。通过电子邮件发送给 Electron 团队的提案将不被视为最终提交。

有关您的提案的更多指导,我们建议您遵循此处的官方 Google Summer of Code 提案撰写建议

申请于 2025年3月24日 开放,并于 2025年4月8日 截止。

往期项目提案

📚 在 2024 年 GSoC 中,@piotrpdev 致力于为 Electron 核心文档添加 API 历史。要查看 Piotr 在 Electron 期间的工作,请阅读他在 2024 年 GSoC 项目档案中的报告。

🔐 在 2022 年 GSoC 中,@aryanshridhar 致力于在 Electron Fiddle 中启用上下文隔离。如果您想查看 Aryan 在 Electron 期间的工作,您可以阅读他在 2022 年 GSoC 项目档案中的报告。

有疑问?

如果您有本博客文章中未提及的问题或关于您的提案草案的疑问,请发送电子邮件至 summer-of-code@electronjs.org 或查看 GSoC 常见问题。请在发送电子邮件前阅读我们的贡献者指南

资源