跳至主要内容

🤝 貢獻指引

Sponsored by n8n
n8n
Does your interface have a backend yet? Try n8n

🚀 歡迎,貢獻者們! 🚀

感謝您對 Open WebUI 做出貢獻的興趣。本篇文件旨在指引您如何更有效地改善此專案。讓我們一同努力,讓 Open WebUI 變得更好!

💡 貢獻方式

想要進行貢獻嗎?太棒了!以下是您可以幫助的方式:

🌟 程式碼貢獻指南

我們歡迎拉取請求。在提交之前,請務必:

  1. 這裡 開啟關於您想法的討論。
  2. 遵循專案的程式碼標準並為新功能加入測試。
  3. 必要時更新文檔。
  4. 撰寫清晰且具描述性的提交訊息。

🛠 優化程式碼拉取請求的最佳範例:

  1. 原子化的拉取請求: 確保您的拉取請求規模較小、集中且僅處理單一目標或任務。這有助於更簡單的程式碼審核並減少引入不相關問題的可能性。如果修改範圍太大,請考慮拆分為更小的、邏輯上獨立的拉取請求。
  2. 遵循現有的程式碼慣例: 確保您的程式碼與專案中的現有程式碼標準及實踐保持一致。
  3. 避免增加額外的外部依賴: 未經事先討論,不要引入新的外部依賴。
  4. 框架無關的方式: 我們致力於保持框架無關性。盡可能自行實現功能,而非依賴外部框架或庫。如果對此方式有疑問或建議,請隨時討論。

感謝您的貢獻!🚀

📚 文檔與教學

幫助我們讓 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 社群 或提交問題。我們樂意協助您!

🚨 問題回報

發現問題了嗎?或有新點子?請查看我們的 問題標籤頁面,看看是否已被報告或建議。如果沒有,請隨時開啟新問題。在報告問題時,請遵守問題模板。這些模板旨在確保從起初便提供所有必要細節,使我們能更高效地解決您的關注。

important
  • 遵循模板規範: 請注意,未按提供的問題模板操作或完全未提供所需資訊,可能導致您的問題被直接關閉,而不再進一步考慮。此方式對於維持問題追蹤的可管理性及完整性至關重要。

  • 詳盡描述是關鍵: 為確保您的問題可以被理解並且有效地解決,務必包含全面的細節。描述應清楚,包括重現步驟、預期結果及實際結果。缺乏足夠的細節可能會妨礙我們解決您的問題的能力。

🧭 支援範圍

我們注意到有越來越多的問題並非直接與 Open WebUI 本身相關,而是與其運行環境(尤其是 Docker 設置)有關。雖然我們努力支持 Docker 部署,但熟悉 Docker 的基本概念對順利使用至關重要。

  • Docker 部署支援: Open WebUI 支援 Docker 部署。假設使用者已具備 Docker 基本知識。若需了解 Docker 基礎,請參考 官方 Docker 文檔

  • 進階設定:設置HTTPS的反向代理和管理Docker部署需要基礎知識。線上有大量資源可以學習這些技能。確保您掌握這些知識將大大提升您使用Open WebUI及類似項目的體驗。

🙏 感謝您!

您的貢獻,不論大小,對Open WebUI都有重要的影響。我們很期待看到您為此項目帶來的價值!

讓我們齊心協力,為社群共同創造一個更強大的工具。🌟