任何开源贡献的最佳起点是 适合你的知识、经验和兴趣的领域。

开始之前

在您开始贡献之前,先了解一下整个项目的情况 的整体情况。如果您还没有完成 BeeWare 教程,请从这里开始。这将使您 接触到最重要的 BeeWare 工具,从而了解它们是如何相互配合的。 如何整合在一起。

完成该教程后,您就可以挑选一些 工作。如果你在教程时遇到任何问题--如果你遇到了一个 错误,或者描述某个步骤时使用的语言不清楚--那就是一个很好的起点 这是一个很好的开始!如果你能把你的经验转化为 如果你能把你的经验转化为对教程的改进,那么下一个学习教程的人就不会遇到同样的问题了。 遇到同样的问题。

但是,如果您的教程体验完全顺利(我们希望 我们也希望如此!),下面是根据您的技能和兴趣,为您提供的一些参与建议。 你的技能和兴趣。

Python 编程

公文包

如果您想为一个问题清晰明确但需要解决漏洞和添加功能的工具做出贡献 但需要解决错误和增加功能的工具、 公文包 可能就是适合您的项目。 项目。Briefcase 是一个将 Python 项目打包为独立的 GUI 应用程序的工具。它接收一个 pyproject.toml 配置文件,并使用配置数据生成安装包。 配置文件,并使用该配置数据生成安装程序或可发布的 应用程序捆绑包。

公文包问题 问题跟踪器 收集了 功能建议(以及少量错误)。如果这是您 如果您是第一次参与,请查找标有 good 第一次 问题 - 这些问题是专门为首次 贡献者,因为它们应该相对简单 实施。您可能还会发现,针对您实际用于开发的 您在开发中实际使用的平台--如果您不使用 如果您没有用于测试的 Linux 机器,就很难修复 Linux 漏洞!

如果您想为某个特定项目做出贡献,也可以 使用这些链接按特定项目过滤好的首发议题:

选择一个票单,留下您正在研究该问题的评论,然后 尝试开发一个实现修复的拉取请求!

图形用户界面编程

如果你有使用本地 widget 库的经验--macOS 上的 Cocoa、Linux 上的 GTK+ 或 iOS 或 Android 的本地库、 GTK+、Windows 窗体或 iOS 或 Android 原生库、 Toga](https://github.com/beeware/toga) 提供帮助。 Toga 是一个跨平台部件工具包--它为用户界面元素(如按钮和按钮)提供了一个通用接口。 它为按钮和树等用户界面元素提供了一个通用接口。

Toga 已定义了一系列接口,但这些接口在所有平台上的 这些接口的实现并不完全适用于所有平台。 请选择一个部件,并在您选择的平台上实现该部件!

即使您**不了解本地 widget 库,您仍然可以通过 Toga Toga 提供帮助。编写新的部件并不像看起来那么复杂。 复杂得多。每个平台都有如何使用其本地 API 的文档,而将这些平台文档从另一种语言(例如 语言(如 Objective C 或 C#)翻译该平台文档的过程相对简单。 简单明了。现有的代码应能为您提供一些指针 如果您有需要,BeeWare 团队很乐意为您提供帮助。 如果您需要帮助,BeeWare 团队非常乐意提供帮助。请登录 [BeeWare Discord] (/bee/chat/),我们将竭尽所能为您提供帮助。 提供帮助!

如果你不想把代码从一种语言转换成另一种语言 还有测试套件。Toga 的核心库也有一个测试套件。 套件,但该测试套件的覆盖率并不高。选择一个 widget 界面,看看能否为它编写一个测试!

文档

良好的文档对于任何成功的项目都至关重要。我们知道 托加公文包 都需要对其文档进行重大改进。 我们知道 TogaBriefcase]() 都需要对文档进行重大改进。您已经完成了教程,现在请看看 TogaBriefcase 的文档。 公文包 的文档,看看能否找到 改进教程、参考资料和主题指南的方法。 的教程、参考资料和主题指南。

教程

最好的贡献方式之一就是确保我们的入门和教程文档坚如磐石。 教程文档坚如磐石。从 从 BeeWare 套件中选择一个感兴趣的项目,并尝试按照入门指南和教程进行操作。 教程。如果您无法找到入门指南--那么这就是 首先要报告的就是这个问题!

在学习本教程的过程中,请注意任何不合理或不工作的地方。 或无法工作的地方。然后针对这些问题打开错误报告。

Windows

如果您是Windows用户,那么BeeWare一定**需要您的帮助。我们的 核心团队在日常开发中都使用Linux和macOS,因此 因此,很容易出现与 Windows 不兼容的情况。这 几乎总是由于疏忽造成的。发现并 在Windows系统上运行BeeWare工具的问题。 帮助。

语言

您会说英语以外的语言吗?目前,核心团队 均以英语为母语。提供翻译的 文档的翻译,或者用您的母语提供全新的教程或指南 语言提供翻译文档或全新的教程或指南是一种很好的贡献方式。选择一个已经有 文档并翻译该文本。或者,从头开始 编写全新的教程。

如果您使用的语言是非拉丁字符集的语言(如俄语或 或从右到左书写的语言(如希伯来语或 阿拉伯语),你就能指出我们在哪些地方假设了 简单的 ASCII 编码或从左到右的约定的地方。选择任何一个 BeeWare 项目,并尝试用您的母语来使用它。 语言使用。如果您遇到任何问题,请将这些问题作为错误报告;如果您觉得自己特别冒险 如果您觉得自己特别有冒险精神,那就看看自己是否能找出修复错误的方法。 修复错误。

实际用途

要确定我们在文档和应用程序接口方面的差距,最好的方法之一就是让人们实际使用BeeWare来构建应用程序。 最好的方法之一就是让人们实际使用BeeWare来构建一些东西。 的东西。因此,如果您对我们目前提出的想法都不感兴趣,何不 试试自己的想法?使用BeeWare套件构建您一直想要的应用程序 一个桌面可视化数据源,或一个移动应用程序来跟踪您的活动。 移动应用程序来跟踪您的活动。 构建它。

我们几乎可以保证您一定会遇到问题。BeeWare 还是一个 是一个非常年轻的项目。但您遇到的问题将为我们 需要解决的问题。我们需要哪些小工具 哪些文档需要改进。所以,当你在 问题时,请记录BeeWare项目中的问题。 的问题。这将帮助我们确定需要改进的地方。 而且,这甚至可能成为您的灵感来源,为您的应用程序做出贡献 做出贡献!