AI 驱动的 Vue3 应用开发平台 入门指南(一):概述

0 阅读7分钟

概述

VTJ.PRO 是一个专为 Vue3 开发者构建的 AI 驱动低代码开发平台,具备可视化设计器、内置低代码引擎、渲染器和代码生成器。它实现了 Vue 源代码与低代码 DSL 之间的双向智能转换,为零学习曲线的前端开发者设计,可无缝集成到现有开发工作流中。

该平台通过其设计器-渲染器分离架构脱颖而出,确保输出代码整洁,对你的开发环境零污染。与传统需要学习专有范式的低代码平台不同,VTJ.PRO 遵循标准 Vue 开发模式,任何 Vue 开发者都能立即上手。

核心功能

VTJ.PRO 提供了一套全面的功能,旨在加速 Vue3 应用开发,同时保持代码质量和灵活性:

功能分类能力优势
技术栈Vue3 + TypeScript + Vite, ElementPlus, Axios, ECharts, VueUse现代化、高性能、开箱即用的行业标准工具
代码自由度源码级定制,无限扩展可能实现手写代码能做到的任何功能
零适配遵循标准 Vue 开发模式,无专有范式Vue 开发者无学习曲线
引擎架构模块化低代码引擎,可独立使用基于 VTJ 构建你自己的低代码平台
代码整洁设计器-渲染器分离,输出纯 Vue 代码可维护,二次开发友好
物料库企业级组件库,页面模板,可复用块使用预构建组件加速开发
AI 集成自然语言 → Vue 组件,设计 → 代码从描述或设计生成组件
双向转换DSL ↔ Vue 源代码,无缝切换可视化设计 ↔ 手写代码按需切换

💡 提示: 双向代码转换能力是 VTJ 的核心创新——你可以可视化设计页面,将其导出为整洁的 Vue 代码,手动修改代码,然后将其导回设计器进行进一步的可视化调整。这消除了可视化开发与代码控制之间的传统权衡。

架构概览

VTJ.PRO 遵循模块化架构,关注点分离清晰,既支持集成使用,也支持独立组件部署:

graph TD
    subgraph 展示层
        PlatformApps[平台特定应用<br/>H5, Pro, UniApp 等]
    end
    subgraph 设计器层
        Designer[可视化设计器<br/>组件库, 图标集]
    end
    subgraph 核心引擎层
        Engine[核心引擎<br/>模型, 解析, 代码生成]
    end
    subgraph 运行时层
        Renderer[渲染器]
    end
    subgraph 工具层
        Tools[CLI, 物料库, 基础工具]
    end

    PlatformApps --> Designer --> Engine --> Renderer --> Tools

架构分为四个不同的层:

  • 展示层:使用设计器的平台特定应用
  • 设计器层:包含组件库和图标集的可视化编辑器界面
  • 核心引擎层:模型、解析和代码生成能力
  • 运行时层:用于显示生成组件的渲染引擎
  • 工具层:CLI 工具、物料库和基础工具

这种分层架构支持多种部署场景:使用带有 Pro 应用的完整平台,将设计器集成到你自己的应用中,或独立利用核心引擎或渲染器等单个包。

项目结构

该 monorepo 按逻辑领域组织,支持完整的开发工作流:

vtj/
├── packages/
│   ├── base/             # 共享工具和辅助函数
│   ├── charts/           # ECharts 集成和图表组件
│   ├── cli/              # 命令行界面工具
│   ├── coder/            # DSL 到 Vue 代码生成引擎
│   ├── core/             # 核心模型、协议和类型定义
│   ├── designer/         # 可视化设计器实现
│   ├── icons/            # 图标库集合
│   ├── local/            # 本地存储和状态管理
│   ├── materials/        # 组件物料定义和 schema
│   ├── node/             # Node.js 工具和服务端功能
│   ├── parser/           # Vue 源代码到 DSL 解析器
│   ├── renderer/         # 运行时渲染引擎
│   ├── ui/               # UI 组件库
│   ├── uni/              # UniApp 特定的运行时功能
│   └── utils/            # 额外的工具函数
│
├── platforms/            # 平台特定的应用实现
│   ├── h5/              # H5 移动应用
│   ├── pro/             # 功能齐全的 Pro 平台
│   ├── pro-uni/         # 支持 UniApp 的 Pro 平台
│   ├── uni-app/         # UniApp 集成
│   └── web/             # Web 应用
│
├── apps/                # 应用模板和示例
│   ├── app/            # Web 应用模板
│   ├── extension/      # 扩展模板
│   ├── h5/             # H5 移动模板
│   ├── library/        # 组件库模板
│   ├── material/       # 物料库模板
│   ├── plugin/         # 插件开发模板
│   └── uniapp/         # UniApp 模板
│
├── create-vtj/          # 项目脚手架 CLI 工具
├── dev/                 # 开发环境和演示场
├── docs/                # 文档源文件
└── scripts/             # 构建和维护脚本

packages/core 模块作为架构基础,定义了包括 ProjectModelBlockModelPropModelEventModelDirectiveModel 在内的基础数据模型,这些模型构成了 DSL schema 的构建块。

支持的平台

VTJ.PRO 为不同的应用场景提供全面的平台支持:

平台描述用例CLI 命令
WebPC 浏览器应用企业管理系统,仪表板npm create vtj@latest -- -t app
H5移动端 Web 应用移动优先界面,响应式 Web 应用npm create vtj@latest -- -t h5
UniApp跨平台移动应用iOS, Android, 小程序npm create vtj@latest -- -t uniapp

每个平台都通过专用的运行时实现(UniApp 对应 packages/uni)、平台特定的构建配置和物料库适配得到完全支持,确保在所有部署目标上功能一致。

关键技术概念

VTJ.PRO 基于几个核心技术概念运行,这些概念赋予了它强大的能力:

DSL (Domain Specific Language) Schema

DSL 作为可视化设计和 Vue 代码之间的中间表示,由 packages/core/src/protocols/ 中的协议定义。该 schema 捕获了 Vue 组件的完整结构,包括 props、events、directives、styles 和 children,实现了可视化和代码表示之间的无损往返转换。

双向代码转换

在 DSL 和 Vue 源代码之间进行双向转换的独特能力是通过两个互补的包实现的:

  • Parser (packages/parser):将 Vue 源代码(.vue 文件)转换为 DSL
  • Coder (packages/coder):将 DSL 转换为整洁、人类可读的 Vue 源代码

这种双向流使开发者能够在可视化设计和代码编辑之间无缝切换,每种格式都可以在适当的时候作为单一事实来源。

设计器-渲染器分离

该架构将设计时(packages/designer)与运行时(packages/renderer)关注点完全分离。这确保生成的代码不包含对设计器的依赖,产生可以独立维护的整洁 Vue 代码,并实现设计器对开发环境的零影响嵌入。

💡 提示: 设计器-渲染器分离在架构上具有重要意义,这意味着你可以使用 VTJ 可视化地原型设计应用,导出整洁代码,然后完全使用手写代码继续开发,而无需对 VTJ 有任何运行时依赖。该平台成为了一个加速工具,而不是锁定框架。

Provider 系统

VTJ 实现了可扩展的 provider 模式,允许在不修改核心代码的情况下自定义数据源、事件处理和生命周期行为。这使得与现有后端系统、状态管理解决方案和 API 层的集成成为可能。

入门选项

VTJ.PRO 提供了多种入门方式,具体取决于你的需求:

选项 1:在线平台(立即体验)

访问 app.vtj.pro 直接在浏览器中体验完整平台,无需任何安装。这是了解功能和工作流的最快方式。

选项 2:本地开发(推荐)

为了获得完整功能和最佳性能,请使用 CLI 创建本地项目:

# 创建一个 Web 应用
npm create vtj@latest --registry=https://registry.npmmirror.com -- -t app

# 创建一个 H5 移动应用
npm create vtj@latest --registry=https://registry.npmmirror.com -- -t h5

# 创建一个 UniApp 跨平台应用
npm create vtj@latest --registry=https://registry.npmmirror.com -- -t uniapp

这将使你能够访问所有包,并能够扩展或修改平台的任何组件。

推荐学习路径

要有效利用 VTJ.PRO,请遵循以下结构化学习进阶:

  1. 当前页面:概述(了解平台的目的和功能)
  2. 下一步:快速入门 - 创建你的第一个项目的动手体验
  3. 基础:安装和环境配置 - 详细的环境配置
  4. 模板
    • 创建 Web 应用 用于基于 PC 的项目
    • 创建 H5 移动应用 用于移动优先的项目
  5. 深入:架构概览 - 全面的技术理解

完成“入门”部分后,继续进入“深入”部分,以掌握 DSL schema、引擎生命周期、渲染器系统、物料开发和插件架构等高级主题。

社区和资源

VTJ.PRO 是一个积极维护的开源项目,拥有全面的文档和社区资源:

该项目使用行业标准工具构建,包括用于 monorepo 管理的 Lerna、用于高效包安装的 pnpm、用于类型安全的 TypeScript 以及用于快速开发构建的 Vite,确保了现代化、可维护的代码库。