---
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 %}