贡献#
Bokeh 是一个开源项目,它的存在仅仅是因为像您一样的贡献者。Bokeh 得益于多元化的软件开发人员、测试人员、编写者、外联专家以及更多人员的共同努力。我们始终欢迎新的成员加入,共同努力让 Bokeh 成为更优秀的工具,为每个人服务!
在本贡献指南中,您可以找到加入不断壮大的 Bokeh 贡献者团队所需的一切信息。这包括有关如何 为 Bokeh 的代码和文档做出贡献、帮助社区支持或 通过捐赠支持 Bokeh 的信息。
注意
在 Bokeh 项目的代码库、问题追踪器和讨论论坛中活跃的每个人都应遵循 行为准则。
从哪里开始#
要使用 Bokeh 的代码和文档,您首先需要 设置开发环境。
然后,您可以通过多种方式为 Bokeh 的代码库做出贡献
其他资源#
除了本 贡献指南 之外,还有许多其他资源可供您快速入门
- Bokeh Slack
Bokeh Slack 是所有贡献者的工作空间,也是从经验丰富的贡献者和维护者那里快速获得反馈的最佳途径。请 申请邀请!
- GitHub wiki 和 BEP
Bokeh GitHub 存储库上的 wiki 包含 Bokeh 增强提案 (BEP)。BEP 是 Bokeh 的核心治理和政策文件。这包括有关贡献流程的详细信息,尤其是在 BEP 1:问题和 PR 管理 和 BEP 6:分支策略 中。
- GitHub 讨论
Bokeh GitHub 存储库的 讨论部分 是一个讨论实现细节以及 Bokeh 的拟议功能和想法的地方。
- Bokeh 路线图
Bokeh 的 路线图 包含 Bokeh 作为工具和社区的目标。
- Github 存储库
Bokeh、bokeh.org 网站以及 Bokeh 的许多其他方面的源代码都托管在 bokeh 上。一个好的入门方法是查看我们 问题追踪器 中的开放问题。
- Bokeh 的文档
有关 Bokeh 各种文档资源的概述,请参阅 docs.bokeh.org。
- Bokeh 的 Discourse
Bokeh 的用户支持由志愿者在 Bokeh Discourse 服务器 上提供。有关 Bokeh 社区资源的更多信息,请参阅 Bokeh 网站的社区部分。
更多贡献方式#
除了改进 Bokeh 的代码库和文档之外,还有许多其他方式可以为 Bokeh 做出贡献
捐赠给 Bokeh#
请考虑 向 Bokeh 捐款。您的慷慨捐赠将帮助该项目支付开发人员时间、其他专业服务、差旅、研讨会和其他重要需求。
Bokeh 是 NumFOCUS 的赞助项目,NumFOCUS 是美国的一个 501(c)(3) 非营利慈善组织。NumFOCUS 为 Bokeh 提供财政、法律和行政支持,以帮助确保该项目的健康和可持续发展。访问 https://numfocus.org/ 了解更多信息。
对 Bokeh 的捐赠由 NumFOCUS 管理。对于美国的捐赠者,您的捐赠在法律允许的范围内是免税的。与任何捐赠一样,您应咨询您的税务顾问,了解您具体的税务状况。
如果您的公司使用 Bokeh,并且能够以资金或实物方式赞助该项目,请通过 info@bokeh.org 与我们联系。
有关财政和实物捐赠的更多信息,请参阅 Bokeh GitHub 存储库 中的 支持 部分。
添加示例#
如果您或您的组织使用 Bokeh,并且愿意分享您正在进行的一些示例,请考虑将它们添加到 Bokeh 展示 中。您还可以通过 pull request 将新的示例添加到 Bokeh 的图库,并将示例添加到 examples 文件夹中。
帮助社区支持#
Bokeh 的所有用户支持均由志愿者提供。虽然支持问题会在各种地方进行讨论,例如 Stack Overflow,但所有用户支持问题的中心位置是 Bokeh Discourse 服务器。如果您能提供帮助,请随时回答用户的问题。Bokeh 的 Discourse 上的所有互动都必须遵循 Bokeh 的 行为准则。
为语言绑定做出贡献#
BokehJS 接受由声明性 JSON 片段表示的对象图。这意味着任何可以生成 JSON 的语言也可以生成 Bokeh 图表,以便在浏览器中显示。
目前已知有三种绑定,它们将 Bokeh 公开给除 Python 之外的其他语言
BokehServer.jl 还实现了 Julia 与 BokehJS 的绑定,包括用于同步 Julia 图表的服务器。它由社区成员 @poldavezac 创作。
bokeh-scala 在 Scala 语言中公开了 Bokeh。该项目由 Bokeh 核心开发团队成员 @mattpap 创建。(该项目目前已存档。)
Python 中的低级对象接口完全镜像 JSON 架构。因此,对于编写 Bokeh 绑定的人来说,最好的、最权威的信息来源是 bokeh.core.properties 和 bokeh.models 的参考指南部分。
另一个用于处理绑定的资源是 Bokeh 的 scripts/spec.py 脚本。这个 Python 脚本生成 Bokeh 中每个模型和属性的 JSON 描述,包括类型、默认值以及 帮助字符串。例如,您可以将这些信息用作创建新的低级绑定的基础,或检查现有绑定是否完整。
如果您想开始使用新的绑定或将新的绑定添加到此列表中,请通过 Slack 联系 Bokeh 核心团队。
报告漏洞#
要报告安全漏洞,请使用 Tidelift 安全联系人。Tidelift 将协调修复和披露。