🤝 贡献指南
🚀 欢迎贡献者! 🚀
非常感谢您有兴趣为 Open WebUI 做出贡献!本文档将指导您完成贡献流程,确保您的贡献能有效地增强项目。让我们共同完善 Open WebUI!
💡 如何贡献
想要贡献?太好了!以下是您可以帮助的方式:
🌟 代码贡献指南
我们欢迎提交 Pull Request(拉取请求)。在提交之前,请:
- 在这里开启一个关于您想法的讨论
- 遵循项目的编码标准,并为新功能编写测试
- 根据需要更新文档
- 编写清晰且具有描述性的提交信息
🛠 代码 PR 最佳实践:
- 原子性 PR: 确保您的 PR 规模适中、重点明确,且只处理单一目标或任务。这有助于更容易进行代码审查,并降低引入不相关问题的可能性。如果更改范围过大,建议拆分为多个逻辑独立的 PR。
- 遵循现有代码约定: 确保您的代码与项目现有的编码标准和实践保持一致。
- 避免额外的外部依赖: 在没有事先讨论的情况下,请勿引入额外的外部依赖。
- 框架无关方法: 我们致力于保持框架无关性。请尽可能自行实现功能,而不是依赖外部框架或库。如果您对这种方法有疑问或建议,欢迎讨论。
感谢您的贡献!🚀
📚 文档和教程
通过改进文档、编写教程或创建关于设置和优化 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 模板。这些模板旨在确保您能提供所有必要的信息,使我们能更高效地解决问题。
-
模板合规性: 请注意,如果不遵循提供的 issue 模板,或未能提供所需信息,您的 issue 可能会被直接关闭。这一规定对于维护 issue 跟踪的可管理性和完整性至关重要。
-
详细信息很重要: 为确保我们能准确理解并有效解决您的问题,提供详细信息至关重要。描述应该清晰明确,包括问题重现步骤、预期结果和实际结果。信息不足可能会影响问题的解决效率。
🧭 支持范围
我们注意到越来越多的问题并非直接关于 Open WebUI 本身,而是关于其运行环境(特别是 Docker 配置)。虽然我们致力于支持 Docker 部署,但了解 Docker 基础知识对于获得良好使用体验至关重要。
-
Docker 部署支持:Open WebUI 支持 Docker 部署。我们假定用户具备 Docker 基础知识。如需了解 Docker 基础知识,请参阅官方 Docker 文档。
-
高级配置:配置 HTTPS 的反向代理和管理 Docker 部署需要相应的基础知识。网上有大量资源可供学习这些技能。掌握这些知识将显著提升您使用 Open WebUI 和类似项目的体验。
🙏 感谢!
您的每一份贡献,无论大小,都对 Open WebUI 意义重大。我们期待看到您为项目带来的改变!
让我们携手为社区打造一个更强大的工具。🌟