Matters 全面開源,邀請你一起來建設馬特市
兩個月前,我們啓動了開源計劃,邀請部分開發者加入 Matters 的代碼倉庫,以便提出建議、磨合協作流程。這兩個月,我們完善了流程與文檔,增加了公用的測試環境,並逐步將產品開發的流程轉移到了 GitHub 上。現在,我們已經將 Matters 的代碼進行了全面開源,任何人都可審閱、取用和參與了!
這兩個月裡,儘管我們還在摸索流程與規範,但是已經有馬特市市民開始貢獻自己的想法了。@mayyyonnaise 着手給編輯器增加了插入標籤的功能,@Ginhing 給前端組件庫增加了 Storybook 便於開發者瀏覽和參與,@東陽 則修復了本地開發中的小 bug。
我們希望開放的不僅僅是源代碼,也是 Matters 產品決策和迭代的流程,所以也希望感興趣的馬特市市民們跟進和參與想法從出現、成型到實現的全過程。在 Matters 的 GitHub 項目中,有一個關於新功能的項目,和一個關於優化與 bug 修復的項目。兩個面板裡都可以看到從 Brainstorm 裡不成型的腦洞,到 Select for development 裡正在開發中的任務,再到 Reviewer approved 裡等待上線中的功能。
這裏有討論中的想法和腦洞,比如在首頁上顯示和展開文章標籤、讓用戶改變字體大小、讓開發者註冊 Matters 的 OAuth 應用、公開和溝通 Matters 的排序算法;也有實現中的功能,比如標籤協作者與社羣管理、重新設計首頁排序、通過 IPFS 分發 Matters Web App、允許文章可以修改。我們也期待你來加入你的有趣的想法!
Matters 的代碼分佈在不同的倉庫之中,主要有網頁 matters-web、編輯器 matters-editor、服務器 matters-sever、服務器緩存 apollo-responsive-cache 幾個倉庫。developer-resource 倉庫則專門用於記錄技術架構的文檔與記錄協作流程的 wiki,是設計者和開發者瞭解 Matters 系統的第一步。
不管是有想要實現的功能,還是有發現 bug,你都可以直接在 GitHub 中提交 issue。如果你知道 issue 應該屬於哪個倉庫,可以直接在對應的倉庫中發起;否則的話,可以在 developer-resource 中提出,我們會再對 issue 進行分類,加上對應的標籤、並整合到對應的 project 排期中。
Issue 主要分成 bug、 enhancement、community、 feature request 幾大類,每一類都設計有對應的流程,記錄在 wiki 頁面裡:
- bug 是既有功能沒有按照設計運作的情況,流程相對簡單,只要有復現方法、並由技術或產品團隊確認,就會加入到排期之中。 enhancement 是不改變既有功能的優化提案,技術團隊將會參與討論,判斷是否應該納入排期。community 則是關於協作規則、社區約章等的提案,往往需要更廣泛的社區討論和共識。
- feature request 是新功能的提案,也是腦洞和創意最容易出現的地方。如果你願意參與設計或者開發、或者有 Matties 願意協助,提案會被產品經理優先考慮;但如果功能和 Matters 發展的大方向相矛盾,我們也會進行討論、達成共識。不過,先在 Matters 中發文、徵詢社區意見、尋找願意合作的夥伴,一定是推動新功能實現最容易的方式。
在各個倉庫中,正在開發中的代碼分支都是 develop。本地開發時,你可以復刻(fork)一個版本,修改代碼,然後向 develop 分支提起 pull request。開發團隊審閱後代碼後會將代碼匯入 develop 分支,並自動部署到 develop 環境中。develop 環境的代碼則會定期部署到 stage 環境中,並在團隊測試後部署到生產環境裡,你也可以在這裏預覽到還未上線的功能。
以上流程和規則還在探索和磨合之中,歡迎你來提出意見和想法。我們也會在之後發出開源月報,定期和大家同步開源社區的動態和進展。期待你在 GitHub 和 Gitter 上找到我們,用另一種方式打開馬特市!
Like my work? Don't forget to support and clap, let me know that you are with me on the road of creation. Keep this enthusiasm together!
- Author
- More