--- title: "新手指引" tags: Ptt App lang: zh-tw image: https://i.imgur.com/XjvyinQ.png description: PTT App --- # 新手指引 ###### 維護人 提莫 ###### tags: `Ptt App` ###### 位置: [主目錄](https://hackmd.io/@twbbs/Root)/新手指引 --- ## 我們在幹嘛? * 這裡有6個核心專案,目標是達成新版本的Ptt App ## 6個核心專案: :::success ==中介底層:資料== * [go-pttbbs](https://github.com/Ptt-official-app/go-pttbbs) * [go-bbs](https://github.com/Ptt-official-app/go-bbs) ::: :::info ==中介應用層:中台、後端、API== * [go-openbbsmiddleware](https://github.com/Ptt-official-app/go-openbbsmiddleware) * [Ptt-backend](https://github.com/Ptt-official-app/Ptt-backend) ::: :::danger ==App== * [iOS App](https://github.com/Ptt-official-app/Ptt-iOS) * [Android App](https://github.com/Ptt-official-app/Ptt-Android) ::: ## App很好理解,前面那 ==4個== 在幹嘛? * 簡而言之,提供App呈現畫面所需要的資料。 ## 欸?不是可以直接連PTT嗎? * 對,但是我們想開發新功能與提供當代API,改原有的BBS太難了。 ## 所以呢? * 我們把原有的BBS當成是檔案資料,由前面4個專案預處理,提供輔助性資料。 ## 整件事的全貌現在長這樣 ```graphviz digraph g{ graph [compound=true] subgraph cluster_001{ label="BBS data" node [shape = box, color = red] pttbbs [URL="https://github.com/ptt/pttbbs"]; GO_bbs [URL="https://github.com/Ptt-official-app/go-bbs"]; GO_pttbbs [URL="https://github.com/Ptt-official-app/go-pttbbs"]; } subgraph Hsiao_002{ label="middleware" node [shape = box, color = green] go_openbbs_middleware [URL="https://github.com/Ptt-official-app/go-openbbsmiddleware"]; } subgraph term{ label="term.ptt.cc" node [shape = box, color = orange] pttweb [URL="https://github.com/ptt/pttweb"]; } subgraph Pichu_002{ label="PichuBackend" node [shape = box, color = blue] Ptt_backend [URL="https://github.com/Ptt-official-app/Ptt-backend"]; } subgraph denken_003{ label="App" node [shape = box, color = brown] iOS_App [URL="https://github.com/Ptt-official-app/Ptt-iOS"]; } subgraph Ken_003{ label="App" node [shape = box, color = brown] Android_App [URL="https://github.com/Ptt-official-app/Ptt-Android"]; } subgraph Hsiao_003{ label="web" node [shape = box, color = orange] demo_pttbbs [URL="https://github.com/Ptt-official-app/demo-pttbbs"]; } pttbbs->pttweb GO_bbs->Ptt_backend GO_pttbbs->go_openbbs_middleware go_openbbs_middleware->demo_pttbbs go_openbbs_middleware->iOS_App Ptt_backend->iOS_App go_openbbs_middleware->Android_App } ``` --- ## 我想幫忙要怎麼做? * 會寫程式->找專案負責人領任務 * 不會寫程式->找提莫領文書作業整理文件 * 想聊天?聊聊專案?->g0v Slack * 想要深度了解? 來g0v找大家聊天 * 加入 [Ptt BBS 後台小組](https://t.me/BBSTechTeam) ,並且介紹自己的3個關鍵字 --- ## 延伸閱讀 * [批踢踢PTT花了近3年重啟註冊,有哪些挑戰?](https://www.bnext.com.tw/article/64119/ptt-aotp-2021) * [[心得] BBS 後端實作期中報告](https://www.ptt.cc/bbs/Soft_Job/M.1627460397.A.2DB.html) --- ## 批踢踢不能亡 {%youtube wWDSAB6PnSM %} ### 批踢踢-社群未來架構 {%youtube PP4vPlGUFuA %} ### middleware/backend 架構 {%youtube 7ngA8gRGDn4 %} ### iOS APP 子專案 {%youtube J1o9qqR4LJE %} ### Android APP 子專案 {%youtube BT80FZwJ2SM %}