- 添加 monorepo 结构 (apps/property-survey, packages/types) - 配置 Expo + React Native + Android 构建链 - 实现本地数据层 (SQLite/better-sqlite3) - 添加 Blueprint 项目蓝图系统 - 配置 ESLint + Prettier - 添加共享类型定义
1.4 KiB
1.4 KiB
| id | name | area | status |
|---|---|---|---|
| monorepo-setup | Monorepo 工程配置 | infrastructure | 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 足够,避免引入额外工具链复杂度