- 添加 monorepo 结构 (apps/property-survey, packages/types) - 配置 Expo + React Native + Android 构建链 - 实现本地数据层 (SQLite/better-sqlite3) - 添加 Blueprint 项目蓝图系统 - 配置 ESLint + Prettier - 添加共享类型定义
41 lines
1.4 KiB
Markdown
41 lines
1.4 KiB
Markdown
---
|
||
id: monorepo-setup
|
||
name: Monorepo 工程配置
|
||
area: infrastructure
|
||
status: done
|
||
---
|
||
|
||
## 概述
|
||
|
||
pnpm workspace 单体仓库基础配置,涵盖包管理、构建脚本和 Node.js 引擎约束。所有 apps/* 和 packages/* 自动纳入 workspace。
|
||
|
||
## 任务卡
|
||
|
||
### ✅ 初始化 pnpm workspace
|
||
- status: done
|
||
- complexity: S
|
||
- files: package.json, pnpm-workspace.yaml
|
||
- acceptance: pnpm-workspace.yaml 正确声明 apps/* 和 packages/*,根 package.json 包含 dev/build/lint 脚本,engines 约束 node>=18 pnpm>=8
|
||
|
||
### ✅ 统一 TypeScript 基础配置
|
||
- status: done
|
||
- complexity: S
|
||
- files: tsconfig.base.json
|
||
- acceptance: 根目录提供 tsconfig.base.json,各子包通过 extends 继承,启用 strict 模式
|
||
|
||
### ✅ 统一 ESLint / Prettier 配置
|
||
- status: done
|
||
- complexity: S
|
||
- files: eslint.config.js, .prettierrc
|
||
- acceptance: 根目录提供共享 lint 规则,各子包可通过 overrides 扩展,pnpm lint 从根目录一键运行
|
||
|
||
### 💭 构建工具链选型
|
||
- status: concept
|
||
- complexity: M
|
||
- files: packages/build-config/package.json, packages/build-config/vite.base.ts
|
||
- acceptance: 封装 Vite 基础配置到 packages/build-config,各 app 通过 extends 引入,减少重复配置
|
||
|
||
## 决策记录
|
||
|
||
- 选择 pnpm workspace 而非 Turborepo/Nx:初期项目规模小,pnpm 原生 workspace 足够,避免引入额外工具链复杂度
|