Skip to main content

🤝 贡献指南

Sponsored by Dave Waring
Dave Waring
Follow along as I build my own AI powered digital brain.

🚀 欢迎贡献者! 🚀

非常感谢您有兴趣为 Open WebUI 做出贡献!本文档将指导您完成贡献流程,确保您的贡献能有效地增强项目。让我们共同完善 Open WebUI!

💡 如何贡献

想要贡献?太好了!以下是您可以帮助的方式:

🌟 代码贡献指南

我们欢迎提交 Pull Request(拉取请求)。在提交之前,请:

  1. 这里开启一个关于您想法的讨论
  2. 遵循项目的编码标准,并为新功能编写测试
  3. 根据需要更新文档
  4. 编写清晰且具有描述性的提交信息

🛠 代码 PR 最佳实践:

  1. 原子性 PR: 确保您的 PR 规模适中、重点明确,且只处理单一目标或任务。这有助于更容易进行代码审查,并降低引入不相关问题的可能性。如果更改范围过大,建议拆分为多个逻辑独立的 PR。
  2. 遵循现有代码约定: 确保您的代码与项目现有的编码标准和实践保持一致。
  3. 避免额外的外部依赖: 在没有事先讨论的情况下,请勿引入额外的外部依赖。
  4. 框架无关方法: 我们致力于保持框架无关性。请尽可能自行实现功能,而不是依赖外部框架或库。如果您对这种方法有疑问或建议,欢迎讨论。

感谢您的贡献!🚀

📚 文档和教程

通过改进文档、编写教程或创建关于设置和优化 Web UI 的指南,帮助我们使 Open WebUI 更易于使用。

🌐 翻译和国际化

帮助我们让 Open WebUI 服务更广泛的用户群体。在本节中,我们将指导您完成向项目添加新翻译的过程。

我们使用 JSON 文件存储翻译。您可以在 src/lib/i18n/locales 目录中找到现有的翻译文件。每个目录对应一种特定语言,例如 en-US 代表英语(美国),fr-FR 代表法语(法国)等。您可以参考 ISO 639 语言代码 找到特定语言的适当代码。

要添加新语言:

  • src/lib/i18n/locales 路径下创建一个以适当语言代码命名的新目录。例如,如果您要添加西班牙语(西班牙)翻译,请创建一个名为 es-ES 的新目录
  • 将美式英语翻译文件(从 src/lib/i18n/locale 中的 en-US 目录)复制到这个新目录,并根据您的语言更新 JSON 格式的字符串值。请确保保持 JSON 对象的结构
  • 将语言代码及其相应标题添加到 src/lib/i18n/locales/languages.json 的语言文件中

🤔 问题和反馈

有问题或反馈?欢迎加入我们的 Discord 社区或创建 issue。我们随时为您提供帮助!

🚨 报告问题

发现问题或有新想法?请先查看我们的 Issues 页面,看看是否已有人报告或建议。如果没有,欢迎创建新的 issue。报告问题时,请务必遵循我们的 issue 模板。这些模板旨在确保您能提供所有必要的信息,使我们能更高效地解决问题。

important
  • 模板合规性: 请注意,如果不遵循提供的 issue 模板,或未能提供所需信息,您的 issue 可能会被直接关闭。这一规定对于维护 issue 跟踪的可管理性和完整性至关重要。

  • 详细信息很重要: 为确保我们能准确理解并有效解决您的问题,提供详细信息至关重要。描述应该清晰明确,包括问题重现步骤、预期结果和实际结果。信息不足可能会影响问题的解决效率。

🧭 支持范围

我们注意到越来越多的问题并非直接关于 Open WebUI 本身,而是关于其运行环境(特别是 Docker 配置)。虽然我们致力于支持 Docker 部署,但了解 Docker 基础知识对于获得良好使用体验至关重要。

  • Docker 部署支持:Open WebUI 支持 Docker 部署。我们假定用户具备 Docker 基础知识。如需了解 Docker 基础知识,请参阅官方 Docker 文档

  • 高级配置:配置 HTTPS 的反向代理和管理 Docker 部署需要相应的基础知识。网上有大量资源可供学习这些技能。掌握这些知识将显著提升您使用 Open WebUI 和类似项目的体验。

🙏 感谢!

您的每一份贡献,无论大小,都对 Open WebUI 意义重大。我们期待看到您为项目带来的改变!

让我们携手为社区打造一个更强大的工具。🌟