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/...

相关推荐
ZKNOW甄知科技3 分钟前
燕千云深度集成飞书:以AI之力,开启无感IT运维体验
大数据·运维·网络·数据库·人工智能·低代码·集成学习
李剑一5 分钟前
瑞幸也AI上了?我用AI命令行帮我点了一杯咖啡,但是我花了不止一杯咖啡钱
aigc·openai·ai编程
液态不合群8 分钟前
AI×低代码工作流:破解制造业数字化流程异构困局
人工智能·低代码
leoZ23112 分钟前
记忆系统与 Agent 定制完全指南(六):Agent 编排与调度
ai编程
Ai拆代码的曹操1 小时前
opencode CLI 源码拆解:yargs + effectCmd 双层架构如何管理 20+ 子命令
架构·ai编程·opencode·源码拆解
AINative软件工程1 小时前
LLM 应用的熔断降级工程实践:Circuit Breaker 不只是重试的升级版
后端·llm·ai编程
listening7771 小时前
HarmonyOS 6.1 低代码实战:AppGallery Connect Low-Code构建电商后台
低代码
倔强的石头_10 小时前
不想每次都从头解释:我用 Doubao-Seed-Evolving 做了一个「稿件接力站」
ai编程
大模型码小白12 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
-XWB-13 小时前
【LLM】Agent Planning 完全指南:8 种纯 LLM 范式 + 8 种混合规划模式详解(二)
人工智能·经验分享·aigc·学习方法·ai编程