AI + 低代码 技术揭秘(十三):CLI 和构建系统

本文档介绍了支持 VTJ 开发和部署的命令行界面工具、构建过程和项目基架系统。它解释了开发人员如何通过 CLI 命令与 VTJ 交互,monorepo 构建系统如何工作,以及如何创建和配置新项目。

有关核心引擎体系结构的信息,请参阅核心体系结构 。有关多平台部署的详细信息,请参阅平台实现 。

CLI 包体系结构​

VTJ CLI 作为 @vtj/cli 软件包实现,该软件包用作整个 VTJ 生态系统的中央构建工具。CLI 提供了全面的构建功能,包括 Vite 配置、TypeScript 编译、测试实用程序和开发服务器管理。

CLI 包结构​

CLI 包通过 vtj 二进制命令公开其功能,主要实现使用 unbuild 构建以实现最佳 Node.js 兼容性。

Monorepo 构建系统​

VTJ 使用由 Lerna 和 PNPM 管理的复杂 monorepo 结构,支持跨所有软件包的协调开发和同步发布。

构建系统组件​

构建系统确保所有软件包保持版本同步,目前整个 monorepo 的版本为 0.12.40。

项目脚手架系统​

create-vtj 软件包提供项目基架功能,允许开发人员使用预配置的模板快速引导新的 VTJ 项目。

脚手架架构​

基架系统支持多种项目类型,每种类型都配置了适用于其目标平台的适当依赖项和构建配置。

开发工作流程脚本​

根 package.json 定义了一组全面的 npm 脚本,用于编排整个 VTJ 生态系统中的开发、构建和部署工作流程。

开发脚本​

脚本类别 脚本示例 目的
开发服务器 dev, pro:dev, app:dev 启动不同平台的开发服务器
构建命令 build, pro:build, web:build 构建生产分发
测试 test, cli:test, coverage 运行测试套件并生成覆盖率报告
包管理 setup, clean, reset 管理依赖项和工作区状态
出版 patch, minor, prerelease 版本管理和包发布

构建管道流​

构建管道可确保 monorepo 中所有软件包之间的协调构建和同步发布。

构建目标和平台支持​

VTJ 支持多个构建目标和部署平台,每个平台都有特定的构建配置和输出格式。

平台构建矩阵​

平台 包 构建工具 输出格式 目标环境
Web @vtj/web Vite ES 模块 + UMD 现代浏览器
H5 移动版 @vtj/h5 Vite ES 模块 移动网页
Uni-App @vtj/uni-app Uni-App CLI Multiple iOS/Android/小程序
专业的 @vtj/pro Vite 企业平台
组件库 @vtj/ui unbuild ES 模块 + CJS 库分发

构建配置管理​

检测和质量保证​

构建系统使用 Vitest 作为主要测试运行程序,集成了全面的测试功能,并支持覆盖率报告和持续集成。

测试基础设施​

元件 工具 目的
测试运行程序 vitest@~3.1.2 单元和集成测试
覆盖 @vitest/coverage-v8 代码覆盖率分析
浏览器测试 jsdom@~26.1.0 Vue 组件的 DOM 模拟
Vue 测试 @vue/test-utils@~2.4.5 Vue 组件测试工具

CLI 软件包提供统一的测试配置,这些配置可以被 monorepo 中的所有软件包继承,从而确保整个 VTJ 生态系统的测试实践一致。

源码仓库

gitee.com/newgateway/...

相关推荐
咬代码的兽5 小时前
满大街的 AI Agent,怎么判断真假?五个土办法
ai编程·ai agent·agentagent
Tangyuewei10 小时前
小米的 Coding Agent 开源了
人工智能·开源·ai编程
狼爷11 小时前
踩坑实录:OpenCode 端口 49374 占用之谜
aigc·ai编程
窗边看云13 小时前
库存 ABC 分类:好钢用在刀刃上
低代码
文谦南宁AI普工13 小时前
写了个 Agent Card 体检器:一张「自我声明」的名片,能验到什么程度
aigc·agent·ai编程
xn713313 小时前
LiteRT Tensor API C++ 怎么用?XNNPACK、GPU 与 NPU 路线如何选择
ai编程
三轩说13 小时前
停更 5 年,它本该被淘汰 —— 直到 Workbuddy 让它跑在新 M6 上
ai编程
白日放歌须纵久13 小时前
Claude Skills 装了就等于能用吗?给 Claude Code Skills 建一套首跑验收流程
ai编程