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

相关推荐
daiyunchao4 分钟前
如何理解"LLM并不理解用户的需求,只是下一个Token的预测,但他能很好的完成任务,比如写对你想要的代码"
后端·ai编程
掘金一周2 小时前
AI 赋能编程,Coding新范式 | 掘金一周 6.19
人工智能·ai编程
踩着两条虫2 小时前
AI + 低代码 技术揭秘(十):平台实施
低代码·ai编程
鲲志说2 小时前
Flowith:打造智能工作流的技术利器,别再求Manus邀请码了!
ai编程
NocoBase3 小时前
五款适合小型企业的库存管理系统(含价格对比)
低代码·开源·资讯
Jooolin4 小时前
【操作系统】这么多任务,操作系统是怎么忙得过来的?
linux·操作系统·ai编程
未来影子6 小时前
Spring AI Alibaba Graph:中断!人类反馈介入,流程丝滑走完~
后端·ai编程
小磊哥er6 小时前
【前端AI实践】Lingma:使用工具辅助开发让你停不下来
前端·ai编程
唐某人丶6 小时前
AI 应用开发入门:前端也可以学习 AI
前端·人工智能·ai编程