Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
581 lines
12 KiB
Markdown
581 lines
12 KiB
Markdown
# Monorepo鏋舵瀯璇勪及 - 褰撳墠闃舵<E99783>鏄<EFBFBD>惁闇€瑕侊紵
|
||
|
||
> **鏂囨。鐗堟湰锛?* v1.0
|
||
> **鍒涘缓鏃ユ湡锛?* 2025-11-06
|
||
> **鏂囨。鐩<E38082>殑锛?* 璇勪及褰撳墠闃舵<E99783>閲囩敤Monorepo鏋舵瀯鐨勫繀瑕佹€у拰鎴愭湰
|
||
|
||
---
|
||
|
||
## 馃<> 鏍稿績闂<E7B8BE><E99782>
|
||
|
||
1. 褰撳墠闃舵<E99783>闇€瑕佷娇鐢∕onorepo鏋舵瀯鍚楋紵
|
||
2. 瀵瑰綋鍓嶉樁娈电殑鎴愭湰楂樺悧锛?
|
||
3. 浠€涔堟椂鍊欐槸鏈€浣虫椂鏈猴紵
|
||
|
||
---
|
||
|
||
## 馃搳 褰撳墠椤圭洰缁撴瀯鍒嗘瀽
|
||
|
||
### 鐜版湁浠g爜缁撴瀯
|
||
|
||
```
|
||
AIclinicalresearch/
|
||
鈹溾攢鈹€ frontend/ # 鍓嶇<E98D93>锛圧eact + Vite锛?
|
||
鈹? 鈹溾攢鈹€ src/
|
||
鈹? 鈹溾攢鈹€ package.json
|
||
鈹? 鈹斺攢鈹€ node_modules/
|
||
鈹?
|
||
鈹溾攢鈹€ backend/ # 鍚庣<E98D9A>锛圢ode.js + Fastify锛?
|
||
鈹? 鈹溾攢鈹€ src/
|
||
鈹? 鈹溾攢鈹€ package.json
|
||
鈹? 鈹斺攢鈹€ node_modules/
|
||
鈹?
|
||
鈹溾攢鈹€ extraction_service/ # Python鏂囨。鎻愬彇鏈嶅姟
|
||
鈹? 鈹溾攢鈹€ main.py
|
||
鈹? 鈹溾攢鈹€ requirements.txt
|
||
鈹? 鈹斺攢鈹€ venv/
|
||
鈹?
|
||
鈹溾攢鈹€ docker-compose.yml # Docker閰嶇疆
|
||
鈹斺攢鈹€ ...
|
||
```
|
||
|
||
**褰撳墠鐗圭偣锛?*
|
||
- 鉁?缁撴瀯绠€鍗曪紝鏄撲簬鐞嗚В
|
||
- 鉁?鍓嶅悗绔<E68297>垎绂伙紝鑱岃矗娓呮櫚
|
||
- 鉁?鍚勮嚜鐙<E59A9C>珛鐨勪緷璧栫<E792A7>鐞?
|
||
- 鉂?娌℃湁浠g爜鍏变韩鏈哄埗
|
||
- 鉂?閲嶅<E996B2>鐨勯厤缃<E58EA4>枃浠?
|
||
- 鉂?涓嶆敮鎸佹ā鍧楃嫭绔嬫墦鍖?
|
||
|
||
---
|
||
|
||
## 馃幆 Monorepo鏋舵瀯瀵规瘮
|
||
|
||
### Monorepo缁撴瀯绀轰緥
|
||
|
||
```
|
||
AIclinicalresearch/
|
||
鈹溾攢鈹€ packages/ # 鍏变韩鍖?
|
||
鈹? 鈹溾攢鈹€ platform-core/ # 骞冲彴鏍稿績锛堝彲澶嶇敤锛?
|
||
鈹? 鈹? 鈹溾攢鈹€ auth/
|
||
鈹? 鈹? 鈹溾攢鈹€ storage/
|
||
鈹? 鈹? 鈹溾攢鈹€ package.json
|
||
鈹? 鈹? 鈹斺攢鈹€ tsconfig.json
|
||
鈹? 鈹?
|
||
鈹? 鈹溾攢鈹€ capabilities-core/ # 閫氱敤鑳藉姏锛堝彲澶嶇敤锛?
|
||
鈹? 鈹? 鈹溾攢鈹€ llm-gateway/
|
||
鈹? 鈹? 鈹溾攢鈹€ document-processor/
|
||
鈹? 鈹? 鈹溾攢鈹€ package.json
|
||
鈹? 鈹? 鈹斺攢鈹€ tsconfig.json
|
||
鈹? 鈹?
|
||
鈹? 鈹斺攢鈹€ shared-types/ # 鍏变韩绫诲瀷瀹氫箟
|
||
鈹? 鈹溾攢鈹€ src/
|
||
鈹? 鈹溾攢鈹€ package.json
|
||
鈹? 鈹斺攢鈹€ tsconfig.json
|
||
鈹?
|
||
鈹溾攢鈹€ apps/ # 搴旂敤
|
||
鈹? 鈹溾攢鈹€ frontend/ # Web鍓嶇<E98D93>
|
||
鈹? 鈹? 鈹溾攢鈹€ src/
|
||
鈹? 鈹? 鈹斺攢鈹€ package.json
|
||
鈹? 鈹?
|
||
鈹? 鈹溾攢鈹€ backend/ # Web鍚庣<E98D9A>
|
||
鈹? 鈹? 鈹溾攢鈹€ src/
|
||
鈹? 鈹? 鈹斺攢鈹€ package.json
|
||
鈹? 鈹?
|
||
鈹? 鈹斺攢鈹€ admin-frontend/ # 杩愯惀绠$悊绔<E6828A>紙鏈<E7B499>潵锛?
|
||
鈹? 鈹溾攢鈹€ src/
|
||
鈹? 鈹斺攢鈹€ package.json
|
||
鈹?
|
||
鈹溾攢鈹€ products/ # 鐙<>珛浜у搧鎵撳寘锛堟湭鏉ワ級
|
||
鈹? 鈹溾攢鈹€ review-system/
|
||
鈹? 鈹斺攢鈹€ literature-system/
|
||
鈹?
|
||
鈹溾攢鈹€ package.json # 鏍筽ackage.json锛圵orkspace閰嶇疆锛?
|
||
鈹溾攢鈹€ pnpm-workspace.yaml # Workspace閰嶇疆
|
||
鈹斺攢鈹€ tsconfig.base.json # 鍏变韩TS閰嶇疆
|
||
```
|
||
|
||
---
|
||
|
||
## 馃挵 鎴愭湰鍒嗘瀽锛氱幇鍦?vs 浠ュ悗
|
||
|
||
### 鏂规<E98F82>A锛氱幇鍦ㄨ浆鎹<E6B586>onorepo
|
||
|
||
#### 鎴愭湰锛?-3澶╋級
|
||
|
||
**Day 1锛氬<E9949B>涔犲拰璁捐<E79281>锛?.5-1澶╋級**
|
||
```
|
||
瀛︿範鍐呭<EFBFBD>锛?
|
||
- pnpm workspaces 鎴?npm workspaces
|
||
- 鍖呬緷璧栫<E792A7>鐞嗭紙workspace:*锛?
|
||
- TypeScript path mapping
|
||
- 鍏变韩閰嶇疆锛坱sconfig, eslint绛夛級
|
||
|
||
宸ヤ綔閲忥細4-8灏忔椂
|
||
闅惧害锛氣瓙猸愨瓙 涓<>瓑
|
||
```
|
||
|
||
**Day 2锛氶噸鏋勭幇鏈変唬鐮侊紙1澶╋級**
|
||
```
|
||
浠诲姟娓呭崟锛?
|
||
1. 鍒涘缓packages/鍜宎pps/鐩<>綍缁撴瀯
|
||
2. 绉诲姩frontend鍜宐ackend鍒癮pps/
|
||
3. 鎻愬彇鍏变韩绫诲瀷鍒皃ackages/shared-types/
|
||
4. 閰嶇疆workspace渚濊禆
|
||
5. 鏇存柊import璺<74>緞
|
||
6. 娴嬭瘯楠岃瘉
|
||
|
||
宸ヤ綔閲忥細8灏忔椂
|
||
闅惧害锛氣瓙猸愨瓙 涓<>瓑
|
||
椋庨櫓锛氣瓙猸?浣庯紙鏈夊洖婊氭柟妗堬級
|
||
```
|
||
|
||
**Day 3锛氭祴璇曞拰浼樺寲锛?.5-1澶╋級**
|
||
```
|
||
娴嬭瘯鍐呭<EFBFBD>锛?
|
||
- 鍓嶇<E98D93>鍚<EFBFBD>姩鍜屾瀯寤?
|
||
- 鍚庣<E98D9A>鍚<EFBFBD>姩鍜屾瀯寤?
|
||
- 渚濊禆瀹夎<E780B9>閫熷害
|
||
- 寮€鍙戜綋楠?
|
||
|
||
宸ヤ綔閲忥細4-8灏忔椂
|
||
```
|
||
|
||
**鎬绘垚鏈<E59E9A>細2-3澶?*
|
||
|
||
#### 鏀剁泭
|
||
|
||
**绔嬪嵆鏀剁泭锛?*
|
||
1. 鉁?浠g爜鍏变韩鍙樺<E98D99>鏄擄紙绫诲瀷瀹氫箟銆佸伐鍏峰嚱鏁扮瓑锛?
|
||
2. 鉁?缁熶竴鐨勪緷璧栫<E792A7>鐞嗭紙鍑忓皯閲嶅<E996B2>瀹夎<E780B9>锛?
|
||
3. 鉁?缁熶竴鐨勯厤缃<E58EA4>紙TypeScript銆丒SLint绛夛級
|
||
4. 鉁?涓烘湭鏉ユ墦鍩虹<E98DA9>
|
||
|
||
**鏈<>潵鏀剁泭锛?*
|
||
1. 鉁?鏂板<E98F82>妯″潡鏃讹紝鍙<E7B49D>互澶嶇敤platform-core鍜宑apabilities-core
|
||
2. 鉁?鐙<>珛浜у搧鎵撳寘鍙樼畝鍗?
|
||
3. 鉁?Electron鍗曟満鐗堝紑鍙戝彉瀹规槗
|
||
4. 鉁?閬垮厤鏈<E58EA4>潵澶ц<E6BEB6>妯¢噸鏋?
|
||
|
||
---
|
||
|
||
### 鏂规<E98F82>B锛氱户缁<E688B7>綋鍓嶇粨鏋勶紝浠ュ悗鍐嶈浆
|
||
|
||
#### 鐭<>湡鎴愭湰锛?澶╋級
|
||
|
||
**浼樼偣锛?*
|
||
- 鉁?鏃犻渶瀛︿範鏂版妧鏈?
|
||
- 鉁?鏃犻渶閲嶆瀯浠g爜
|
||
- 鉁?鍙<>互绔嬪嵆寮€濮婣SL妯″潡寮€鍙?
|
||
|
||
**缂虹偣锛?*
|
||
- 鉂?浠g爜閲嶅<E996B2>锛堝墠鍚庣<E98D9A>绫诲瀷瀹氫箟銆佸伐鍏峰嚱鏁扮瓑锛?
|
||
- 鉂?渚濊禆绠$悊鍒嗘暎
|
||
- 鉂?涓烘湭鏉ュ煁涓嬫妧鏈<E5A6A7>€?
|
||
|
||
#### 鏈<>潵鎴愭湰锛?-2鍛<32>級
|
||
|
||
**瑙﹀彂鏉′欢锛?*
|
||
- 闇€瑕佸紑鍙戣繍钀ョ<E99280>鐞嗙<E9909E>锛堢嫭绔嬪墠绔<E5A2A0>級
|
||
- 闇€瑕佸紑鍙戠嫭绔嬩骇鍝佸寘锛堝<E9949B>绋跨郴缁熴€丄I鏂囩尞锛?
|
||
- 闇€瑕佸紑鍙慐lectron鍗曟満鐗?
|
||
- 浠g爜閲嶅<E996B2>涓ラ噸锛岀淮鎶ゅ洶闅?
|
||
|
||
**閲嶆瀯鎴愭湰锛堜及绠楋級锛?*
|
||
```
|
||
鏈<EFBFBD>潵閲嶆瀯鎴愭湰锛?
|
||
- 瀛︿範鍜岃<E98D9C>璁★細1澶╋紙鍚岀幇鍦<E5B987>級
|
||
- 閲嶆瀯浠g爜锛?-5澶╋紙浠g爜閲忔洿澶э級
|
||
* 澶氫釜鍓嶇<E98D93>搴旂敤锛圵eb銆丄dmin銆丒lectron锛?
|
||
* 澶氫釜鍚庣<E98D9A>妯″潡
|
||
* 澶ч噺鍏变韩浠g爜闇€瑕佹彁鍙?
|
||
- 娴嬭瘯楠岃瘉锛?-3澶?
|
||
- 淇<><E6B787>闂<EFBFBD><E99782>锛?-2澶?
|
||
|
||
鎬绘垚鏈<EFBFBD>細7-11澶?
|
||
|
||
鏄<EFBFBD>幇鍦ㄧ殑3-5鍊嶏紒
|
||
```
|
||
|
||
---
|
||
|
||
## 馃搳 瀵规瘮鐭╅樀
|
||
|
||
| 缁村害 | 鏂规<E98F82>A锛氱幇鍦ㄨ浆 | 鏂规<E98F82>B锛氫互鍚庤浆 |
|
||
|------|-------------|-------------|
|
||
| **绔嬪嵆鎴愭湰** | 猸愨瓙猸?涓<>紙2-3澶╋級 | 猸愨瓙猸愨瓙猸?闆?|
|
||
| **鏈<>潵鎴愭湰** | 猸愨瓙猸愨瓙猸?闆?| 猸愨瓙 楂橈紙7-11澶╋級 |
|
||
| **瀛︿範闅惧害** | 猸愨瓙猸?涓<>瓑 | 猸愨瓙猸?涓<>瓑锛堝欢鍚庯級 |
|
||
| **椋庨櫓** | 猸愨瓙 浣?| 猸愨瓙猸?涓<>紙鎶€鏈<E282AC>€猴級 |
|
||
| **浠g爜澶嶇敤** | 猸愨瓙猸愨瓙猸?浼樼<E6B5BC> | 猸愨瓙 鍥伴毦 |
|
||
| **妯″潡鐙<E6BDA1>珛鎵撳寘** | 猸愨瓙猸愨瓙猸?瀹规槗 | 猸愨瓙 鍥伴毦 |
|
||
| **鍥㈤槦鍗忎綔** | 猸愨瓙猸愨瓙 濂?| 猸愨瓙猸?涓€鑸?|
|
||
| **寮€鍙戜綋楠?* | 猸愨瓙猸愨瓙 濂?| 猸愨瓙猸?涓€鑸?|
|
||
|
||
---
|
||
|
||
## 馃幆 褰撳墠闃舵<E99783>璇勪及
|
||
|
||
### 褰撳墠椤圭洰鐘舵€?
|
||
|
||
**宸插畬鎴愶細**
|
||
- 鉁?鍓嶇<E98D93>锛圧eact + Vite锛?
|
||
- 鉁?鍚庣<E98D9A>锛圢ode.js + Fastify锛?
|
||
- 鉁?Python鏂囨。鎻愬彇鏈嶅姟
|
||
- 鉁?鍩虹<E98DA9>鍔熻兘锛圓IA銆丳KB锛?
|
||
|
||
**鍗冲皢寮€鍙戯細**
|
||
- 鈴?ASL妯″潡锛圓I鏅鸿兘鏂囩尞锛?
|
||
- 鈴?ADMIN锛堣繍钀ョ<E99280>鐞嗙<E9909E>锛? 鐙<>珛鍓嶇<E98D93>搴旂敤
|
||
|
||
**鏈<>潵瑙勫垝锛?*
|
||
- 鈴?DC銆丼SA銆丼T銆丷VW妯″潡
|
||
- 鈴?鐙<>珛浜у搧鍖咃紙瀹$ǹ绯荤粺銆丄I鏂囩尞锛?
|
||
- 鈴?Electron鍗曟満鐗?
|
||
|
||
---
|
||
|
||
### 鏄<>惁闇€瑕丮onorepo锛?
|
||
|
||
**璇勪及鏍囧噯锛?*
|
||
|
||
#### 鉁?闇€瑕?- 濡傛灉婊¤冻浠ヤ笅鏉′欢锛?
|
||
|
||
1. **杩戞湡锛?-3涓<33>湀锛変細寮€鍙戝<E98D99>涓<EFBFBD>嫭绔嬪簲鐢?*
|
||
- 鉁?杩愯惀绠$悊绔<E6828A>紙鐙<E7B499>珛鍓嶇<E98D93>锛?
|
||
- 鉁?ASL銆丏C绛夋柊妯″潡
|
||
|
||
2. **鏈変唬鐮佸叡浜<E58FA1>渶姹?*
|
||
- 鉁?绫诲瀷瀹氫箟锛圲ser銆丳roject绛夛級
|
||
- 鉁?API瀹㈡埛绔<E59F9B>紙apiClient锛?
|
||
- 鉁?宸ュ叿鍑芥暟锛堟棩鏈熸牸寮忓寲銆侀獙璇佺瓑锛?
|
||
|
||
3. **鏈<>潵鏈夋ā鍧楃嫭绔嬮儴缃查渶姹?*
|
||
- 鉁?瀹$ǹ绯荤粺鐙<E7B2BA>珛浜у搧
|
||
- 鉁?AI鏂囩尞鐙<E5B09E>珛浜у搧
|
||
- 鉁?Electron鍗曟満鐗?
|
||
|
||
4. **鍥㈤槦鑳藉<E991B3>鎺ュ彈2-3澶╃殑瀛︿範鍜岄噸鏋?*
|
||
- 鉁?瀛︿範鏇茬嚎涓嶉櫋宄?
|
||
- 鉁?鏂囨。鍜屾渶浣冲疄璺典赴瀵?
|
||
|
||
#### 鉂?涓嶉渶瑕?- 濡傛灉婊¤冻浠ヤ笅鏉′欢锛?
|
||
|
||
1. **鍙<>湁涓€涓<E282AC>墠绔?+ 涓€涓<E282AC>悗绔?*
|
||
- 鉂?褰撳墠宸叉湁杩愯惀绠$悊绔<E6828A>渶姹?
|
||
|
||
2. **娌℃湁浠g爜鍏变韩闇€姹?*
|
||
- 鉂?宸叉湁澶ч噺閲嶅<E996B2>浠g爜锛堢被鍨嬪畾涔夌瓑锛?
|
||
|
||
3. **涓嶆墦绠楁ā鍧楀寲鍜岀嫭绔嬮儴缃?*
|
||
- 鉂?宸茶<E5AEB8>鍒掓ā鍧楃嫭绔嬮攢鍞?
|
||
|
||
4. **鍥㈤槦瀹屽叏娌℃湁鏃堕棿瀛︿範鏂版妧鏈?*
|
||
- 鈿狅笍 鍙<>渶2-3澶?
|
||
|
||
---
|
||
|
||
## 馃挕 鎴戠殑寤鸿<E5AFA4>
|
||
|
||
### 寤鸿<E5AFA4>锛氱幇鍦ㄨ浆鎹<E6B586>onorepo 猸愨瓙猸愨瓙 **鎺ㄨ崘**
|
||
|
||
**鐞嗙敱锛?*
|
||
|
||
**1. 鎶曞叆浜у嚭姣旀瀬楂?*
|
||
```
|
||
鎶曞叆锛?-3澶?
|
||
鑺傜渷锛氭湭鏉?-11澶╋紙鑺傜渷5-8澶╋級
|
||
ROI锛?00%+
|
||
```
|
||
|
||
**2. 姝e<E5A79D>浜庢渶浣虫椂鏈?*
|
||
```
|
||
褰撳墠锛?
|
||
- 浠g爜閲忛€備腑锛堜笉澶氫笉灏戯級
|
||
- 鍗冲皢寮€鍙戝<E98D99>涓<EFBFBD>柊妯″潡
|
||
- 鍥㈤槦灏忥紝娌熼€氭垚鏈<E59E9A>綆
|
||
|
||
鏈<EFBFBD>潵锛?
|
||
- 浠g爜閲忓ぇ锛堥噸鏋勫洶闅撅級
|
||
- 澶氫釜搴旂敤鍚屾椂杩愯<E69DA9>
|
||
- 閲嶆瀯褰卞搷鑼冨洿澶?
|
||
```
|
||
|
||
**3. 绗﹀悎鏈<E6828E>潵闇€姹?*
|
||
```
|
||
杩戞湡闇€姹傦紙3涓<EFBFBD>湀鍐咃級锛?
|
||
- 鉁?杩愯惀绠$悊绔<E6828A>紙鐙<E7B499>珛鍓嶇<E98D93>锛?
|
||
- 鉁?澶氫釜涓氬姟妯″潡锛圓SL銆丏C绛夛級
|
||
- 鉁?浠g爜鍏变韩锛堢被鍨嬨€佸伐鍏峰嚱鏁帮級
|
||
|
||
鏈<EFBFBD>潵闇€姹傦紙6-12涓<32>湀锛夛細
|
||
- 鉁?鐙<>珛浜у搧鎵撳寘
|
||
- 鉁?Electron鍗曟満鐗?
|
||
- 鉁?寰<>湇鍔℃媶鍒?
|
||
```
|
||
|
||
**4. 瀛︿範鎴愭湰涓嶉珮**
|
||
```
|
||
Monorepo宸ュ叿锛?
|
||
- pnpm workspaces锛堟帹鑽愶紝鏈€绠€鍗曪級
|
||
- npm workspaces锛堝唴缃<E594B4>紝鏃犻渶瀹夎<E780B9>锛?
|
||
- yarn workspaces锛堟垚鐔燂級
|
||
|
||
瀛︿範璧勬簮锛?
|
||
- 鉁?瀹樻柟鏂囨。瀹屽杽
|
||
- 鉁?绀惧尯鏈€浣冲疄璺典赴瀵?
|
||
- 鉁?AI鍔╂墜锛堟垜锛夊彲浠ュ叏绋嬫寚瀵?
|
||
```
|
||
|
||
---
|
||
|
||
### 濡傛灉蹇呴』閫夋嫨鏂规<E98F82>B
|
||
|
||
**鏈€浣庤<E6B5A3>姹傦細**
|
||
|
||
**1. 寤虹珛浠g爜鍏变韩鏈哄埗**
|
||
```typescript
|
||
// 鍒涘缓鍏变韩鐩<E99FA9>綍
|
||
shared/
|
||
鈹溾攢鈹€ types/ # 鍏变韩绫诲瀷瀹氫箟
|
||
鈹? 鈹溾攢鈹€ user.ts
|
||
鈹? 鈹溾攢鈹€ project.ts
|
||
鈹? 鈹斺攢鈹€ index.ts
|
||
鈹?
|
||
鈹斺攢鈹€ utils/ # 鍏变韩宸ュ叿鍑芥暟
|
||
鈹溾攢鈹€ date.ts
|
||
鈹溾攢鈹€ validation.ts
|
||
鈹斺攢鈹€ index.ts
|
||
|
||
// 鍓嶅悗绔<E68297>紩鐢?
|
||
import { User } from '../../shared/types';
|
||
```
|
||
|
||
**2. 缁熶竴閰嶇疆鏂囦欢**
|
||
```
|
||
tsconfig.base.json # 鍏变韩TS閰嶇疆
|
||
.eslintrc.shared.js # 鍏变韩ESLint閰嶇疆
|
||
```
|
||
|
||
**3. 涓ユ牸鐨勪唬鐮佽<E990AE>鑼?*
|
||
```
|
||
- 绂佹<E7BB82>澶嶅埗绮樿创浠g爜
|
||
- 寮哄埗浣跨敤鍏变韩绫诲瀷
|
||
- 瀹氭湡浠g爜瀹℃煡
|
||
```
|
||
|
||
**瑙﹀彂Monorepo杞<6F>崲鐨勪俊鍙凤細**
|
||
- 寮€濮嬪紑鍙戣繍钀ョ<E99280>鐞嗙<E9909E>
|
||
- 浠g爜閲嶅<E996B2>瓒呰繃3澶?
|
||
- 鏂板<E98F82>绗?涓<>簲鐢?
|
||
|
||
---
|
||
|
||
## 馃殌 瀹炴柦鏂规<E98F82>锛堝<E9949B>鏋滈€夋嫨杞<E5ABA8>崲锛?
|
||
|
||
### 闃舵<E99783>涓€锛氬噯澶囷紙鍗婂ぉ锛?
|
||
|
||
**瀛︿範pnpm workspaces锛?*
|
||
```bash
|
||
# 1. 瀹夎<E780B9>pnpm锛堝<E9949B>鏋滄病鏈夛級
|
||
npm install -g pnpm
|
||
|
||
# 2. 闃呰<E99783>鏂囨。锛?0鍒嗛挓锛?
|
||
https://pnpm.io/workspaces
|
||
|
||
# 3. 鐪嬬ず渚嬮」鐩<E3808D>紙30鍒嗛挓锛?
|
||
```
|
||
|
||
**璁捐<E79281>鐩<EFBFBD>綍缁撴瀯锛?*
|
||
```
|
||
鍐冲畾锛?
|
||
- packages/ 鏀句粈涔堬紵锛坰hared-types銆乸latform-core绛夛級
|
||
- apps/ 鏀句粈涔堬紵锛坒rontend銆乥ackend銆乤dmin-frontend锛?
|
||
- 鏄<>惁闇€瑕乸roducts/锛燂紙鏆傛椂涓嶉渶瑕侊級
|
||
```
|
||
|
||
---
|
||
|
||
### 闃舵<E99783>浜岋細閲嶆瀯锛?-1.5澶╋級
|
||
|
||
**Step 1锛氬垱寤哄熀纭€缁撴瀯**
|
||
```bash
|
||
# 1. 鍒涘缓鏍筽ackage.json
|
||
pnpm init
|
||
|
||
# 2. 鍒涘缓pnpm-workspace.yaml
|
||
cat > pnpm-workspace.yaml << EOF
|
||
packages:
|
||
- 'packages/*'
|
||
- 'apps/*'
|
||
EOF
|
||
|
||
# 3. 鍒涘缓鐩<E7BC93>綍
|
||
mkdir -p packages/shared-types
|
||
mkdir -p apps
|
||
```
|
||
|
||
**Step 2锛氱Щ鍔ㄧ幇鏈変唬鐮?*
|
||
```bash
|
||
# 绉诲姩frontend
|
||
mv frontend apps/frontend
|
||
|
||
# 绉诲姩backend
|
||
mv backend apps/backend
|
||
|
||
# extraction_service淇濇寔鍘熶綅锛圥ython涓嶉渶瑕丮onorepo锛?
|
||
```
|
||
|
||
**Step 3锛氭彁鍙栧叡浜<E58FA1>唬鐮?*
|
||
```bash
|
||
# 鍒涘缓shared-types鍖?
|
||
cd packages/shared-types
|
||
pnpm init
|
||
# 绉诲姩绫诲瀷瀹氫箟
|
||
```
|
||
|
||
**Step 4锛氶厤缃<E58EA4>緷璧?*
|
||
```json
|
||
// apps/frontend/package.json
|
||
{
|
||
"dependencies": {
|
||
"@yizhengxun/shared-types": "workspace:*"
|
||
}
|
||
}
|
||
|
||
// apps/backend/package.json
|
||
{
|
||
"dependencies": {
|
||
"@yizhengxun/shared-types": "workspace:*"
|
||
}
|
||
}
|
||
```
|
||
|
||
**Step 5锛氭洿鏂癷mport**
|
||
```typescript
|
||
// 淇<>敼鍓?
|
||
import { User } from '../types/user';
|
||
|
||
// 淇<>敼鍚?
|
||
import { User } from '@yizhengxun/shared-types';
|
||
```
|
||
|
||
**Step 6锛氬畨瑁呬緷璧?*
|
||
```bash
|
||
# 鏍圭洰褰曟墽琛岋紙浼氬畨瑁呮墍鏈夊寘鐨勪緷璧栵級
|
||
pnpm install
|
||
```
|
||
|
||
---
|
||
|
||
### 闃舵<E99783>涓夛細娴嬭瘯楠岃瘉锛堝崐澶╋級
|
||
|
||
**娴嬭瘯娓呭崟锛?*
|
||
- [ ] 鍓嶇<E98D93>鍚<EFBFBD>姩姝e父锛坄cd apps/frontend && pnpm dev`锛?
|
||
- [ ] 鍚庣<E98D9A>鍚<EFBFBD>姩姝e父锛坄cd apps/backend && pnpm dev`锛?
|
||
- [ ] 绫诲瀷鎻愮ず姝e父锛圴SCode鏅鸿兘鎻愮ず锛?
|
||
- [ ] 鏋勫缓鎴愬姛锛坄pnpm build`锛?
|
||
- [ ] 鎵€鏈夊姛鑳芥<E991B3>甯?
|
||
|
||
**鍥炴粴鏂规<E98F82>锛?*
|
||
```bash
|
||
# 濡傛灉鍑虹幇闂<E5B987><E99782>锛屽彲浠ョ珛鍗冲洖婊?
|
||
git reset --hard HEAD
|
||
```
|
||
|
||
---
|
||
|
||
## 馃搳 鎬荤粨瀵规瘮
|
||
|
||
### 绔嬪嵆杞<E5B586>崲 vs 寤跺悗杞<E68297>崲
|
||
|
||
| 椤圭洰 | 绔嬪嵆杞<E5B586>崲 | 寤跺悗杞<E68297>崲 |
|
||
|------|---------|---------|
|
||
| **鏃堕棿鎴愭湰** | 2-3澶?| 鏈<>潵7-11澶?|
|
||
| **瀛︿範鎴愭湰** | 涓<>瓑 | 涓<>瓑锛堝欢鍚庯級 |
|
||
| **椋庨櫓** | 浣?| 涓<>紙鎶€鏈<E282AC>€猴級 |
|
||
| **浠g爜璐ㄩ噺** | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸?|
|
||
| **寮€鍙戞晥鐜?* | 猸愨瓙猸愨瓙猸?| 猸愨瓙猸?|
|
||
| **鏈<>潵鎵╁睍** | 猸愨瓙猸愨瓙猸?| 猸愨瓙 |
|
||
| **鎶曞叆浜у嚭姣?* | 猸愨瓙猸愨瓙猸?| 猸愨瓙 |
|
||
|
||
---
|
||
|
||
## 馃幆 鏈€缁堝缓璁?
|
||
|
||
### 鎺ㄨ崘鏂规<E98F82>锛氱珛鍗宠浆鎹<E6B586>onorepo 猸愨瓙猸愨瓙猸?
|
||
|
||
**鏍稿績鐞嗙敱锛?*
|
||
1. 鉁?**鎶曞叆灏忥紝鏀剁泭澶?*锛?-3澶╂崲鏉ユ湭鏉?-8澶╃殑鑺傜渷
|
||
2. 鉁?**姝e<E5A79D>浜庢渶浣虫椂鏈?*锛氫唬鐮侀噺閫備腑锛屽嵆灏嗗紑鍙戝<E98D99>妯″潡
|
||
3. 鉁?**绗﹀悎鏈<E6828E>潵瑙勫垝**锛氳繍钀ョ<E99280>鐞嗙<E9909E>銆佺嫭绔嬩骇鍝佸寘銆丒lectron鍗曟満鐗?
|
||
4. 鉁?**瀛︿範鎴愭湰鍙<E6B9B0>帶**锛氭湁AI鍏ㄧ▼鎸囧<E98EB8>锛屾湁璇︾粏鏂囨。
|
||
|
||
**瀹炴柦璁″垝锛?*
|
||
```
|
||
鏈<EFBFBD>懆锛歁onorepo閲嶆瀯锛?-3澶╋級
|
||
Day 1锛氬<E9949B>涔?+ 璁捐<E79281>锛堝崐澶╋級
|
||
Day 2锛氶噸鏋勫疄鏂斤紙1澶╋級
|
||
Day 3锛氭祴璇曢獙璇侊紙鍗婂ぉ锛?
|
||
|
||
涓嬪懆锛氱户缁瑼SL妯″潡寮€鍙?
|
||
- 浜<>彈Monorepo甯︽潵鐨勪究鍒?
|
||
- 浠g爜澶嶇敤鍙樼畝鍗?
|
||
- 绫诲瀷鍏变韩寮€绠卞嵆鐢?
|
||
```
|
||
|
||
**濡傛灉鎮ㄥ喅瀹氶噰绾筹紝鎴戝彲浠ワ細**
|
||
1. 鉁?鎻愪緵璇︾粏鐨剆tep-by-step鎸囧<E98EB8>
|
||
2. 鉁?甯<>偍璁捐<E79281>鐩<EFBFBD>綍缁撴瀯
|
||
3. 鉁?缂栧啓閰嶇疆鏂囦欢
|
||
4. 鉁?鍗忓姪閲嶆瀯鍜屾祴璇?
|
||
|
||
---
|
||
|
||
### 鏇夸唬鏂规<E98F82>锛氬欢鍚庤浆鎹<E6B586>紙涓嶆帹鑽愶級
|
||
|
||
**濡傛灉鏃堕棿纭<E6A3BF>疄绱ц揩锛?*
|
||
|
||
**鏈€浣庤<E6B5A3>姹傦細**
|
||
1. 鉁?鍒涘缓`shared/`鐩<EFBFBD>綍瀛樻斁鍏变韩浠g爜
|
||
2. 鉁?鍒跺畾浠g爜澶嶇敤瑙勮寖
|
||
3. 鉁?鍦ㄥ紑鍙戣繍钀ョ<E99280>鐞嗙<E9909E>鍓嶅繀椤昏浆鎹?
|
||
|
||
**瑙﹀彂鏉′欢锛?*
|
||
- 寮€濮嬪紑鍙戣繍钀ョ<E99280>鐞嗙<E9909E>
|
||
- 浠g爜閲嶅<E996B2>涓ラ噸
|
||
- 鍥㈤槦鎴愬憳鎶辨€?
|
||
|
||
---
|
||
|
||
**鎮ㄨ<E98EAE>寰楀憿锛?* 馃槉
|
||
|
||
鏄<EFBFBD>惁鎰挎剰鎶曞叆2-3澶╋紝涓烘湭鏉ヨ妭鐪?-8澶╋紵
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|