跳到主要内容

Monorepo 架构

井云前端采用 Monorepo 架构,使用 pnpm workspace 进行包管理,实现代码共享和统一管理。

架构优势

1. 代码共享

  • 公共组件和工具统一管理
  • 避免重复开发
  • 保持一致性

2. 依赖管理

  • 统一的依赖版本
  • 减少依赖冲突
  • 优化安装效率

3. 开发效率

  • 跨应用开发
  • 统一的构建流程
  • 共享开发配置

目录结构

frontend/
├── pnpm-workspace.yaml # workspace 配置
├── package.json # 根包配置
├── hosts/ # 应用程序
├── packages/ # 核心包
└── shared/ # 共享包

Workspace 配置

packages:
- 'shared/*' # 共享包
- 'packages/*' # 核心包
- 'hosts/*' # 应用程序

包管理策略

依赖提升

  • 公共依赖提升到根目录
  • 减少重复安装
  • 优化 node_modules 大小

版本管理

  • 统一版本策略
  • 自动化版本更新
  • 版本兼容性检查

开发流程

安装依赖

pnpm install

开发应用

cd hosts/platform
pnpm dev

构建应用

cd hosts/platform
pnpm build

构建所有包

pnpm build:packages

发布策略

统一发布

  • 自动化发布流程
  • 版本标签管理
  • 发布日志生成

独立发布

  • 应用独立发布
  • 包独立发布
  • 灵活的发布策略