“低代码 = 玩具?”——那是你还没遇到 TinyEngine。
如果你还在为重复搭建表单、页面布局、审批流而头疼;如果你曾尝试过某些“可视化搭建平台”,却发现生成的代码无法维护、组件无法扩展、后端对接像黑盒……那么,是时候认识一下 TinyEngine 了。
这不是又一个“只能做 Demo”的低代码工具,而是由 华为 OpenTiny 团队开源、真正面向 开发者二次开发 的低代码引擎。它不替你做决定,而是给你一套强大、灵活、可插拔的“乐高积木”,让你既能快速出活,又能完全掌控底层逻辑。

一、“低代码”为什么总被前端嫌弃?
先说个扎心的事实:很多前端开发者对“低代码”天然抵触。
为什么?因为市面上大多数低代码平台存在三大痛点:
生成的代码不可读、不可维护:平台把逻辑全塞进 JSON 或隐藏在运行时,一旦需求变更,只能重做。
组件封闭,无法集成自有业务组件:想加个带审批状态的按钮?抱歉,不在组件库里。
前后端割裂:前端能拖拽,但后端接口、权限、数据模型全靠手动对接,效率没提升多少。
结果就是:低代码平台成了产品经理的玩具,开发团队还得擦屁股。
但 TinyEngine 不一样。它的定位很明确:不是替代开发者,而是赋能开发者。


二、TinyEngine 是什么?不只是“拖拽工具”
TinyEngine 是华为 OpenTiny 团队于 2023 年开源的 通用低代码引擎,核心目标是:让开发者能基于它,快速搭建出属于自己的低代码平台。
它有几个关键特性,让它在众多低代码方案中脱颖而出:
✅ 基于 Vue 3 + Vite,前端体验丝滑
整个设计器用 Vue 3 构建,响应式、组合式 API、TypeScript 支持一应俱全。你在 TinyEngine 里拖拽的每个组件,最终都会生成 真实、可读、可 Git 管理的 Vue 源码,而不是一堆神秘的 DSL。

✅ 真·插件化架构,扩展无上限
TinyEngine 提供了完整的插件体系:面板插件、画布插件、物料插件、构建插件……你想加个 AI 自动生成布局的功能?写个插件就行。社区已有开发者贡献了侧边栏管理、AI 辅助编码等插件。

✅ 前后端全链路打通,告别 Mock Server
很多开源低代码项目只给前端设计器,后端要自己写。TinyEngine 直接开源了 Java 版本的服务端(tiny-engine-backend-java),包含:
物料管理
页面 Schema 存储
构建任务调度
用户权限控制


本地部署后,前端通过 VITE_ORIGIN 配置指向后端,就能实现完整闭环。
✅支持私有组件库 + 自定义 DSL
你可以把自己的业务组件打包成 NPM 包,发布到私有仓库(比如 Verdaccio),再通过 TinyEngine 的 物料注册机制 接入设计器。更酷的是,它允许你自定义 DSL(领域特定语言),这意味着你可以定义自己的页面描述协议,生成 React、Svelte 甚至小程序代码!

三、手把手:5 分钟跑通 TinyEngine
别被“全链路”吓到,其实启动非常简单。
前端启动(快速体验)
git clone -b develop git@github.com:opentiny/tiny-engine.gitcd tiny-enginepnpm installpnpm dev
访问 http://localhost:8090,就能看到设计器界面。这时候用的是内置的 Mock Server,适合初步体验。
后端启动(真实环境)
git clone -b develop git@github.com:opentiny/tiny-engine-backend-java.git# 修改 application-dev.yml 中的数据库配置./mvnw spring-boot:run
默认启动在 7090 端口。
然后回到前端项目,修改:
designer-demo/env/.env.development → VITE_ORIGIN=http://127.0.0.1:7090
designer-demo/engine.config.js → 确保物料地址正确
最后运行:
pnpm serve:frontend
现在你拥有了一个 可持久化保存页面、支持多人协作、能生成真实项目 的低代码平台!
四、如何接入你的私有组件库?
这是 TinyEngine 最受企业欢迎的功能之一。
假设你有一个内部组件库 @mycorp/ui-kit,想在设计器里直接拖拽使用:
1、用 Verdaccio 搭建私有 NPM 仓库
git clone -b develop git@github.com:opentiny/tiny-engine.gitcd tiny-enginepnpm installpnpm dev
修改配置监听 0.0.0.0:4873,方便局域网访问。
2、发布组件库
在组件库的 package.json 中添加:
git clone -b develop git@github.com:opentiny/tiny-engine.gitcd tiny-enginepnpm installpnpm dev
然后 npm publish --registry http://localhost:4873
3、部署静态资源服务(可选)
使用 lzwme/unpkg 镜像 Verdaccio,提供 JS/CSS 资源:
git clone -b develop git@github.com:opentiny/tiny-engine.gitcd tiny-enginepnpm installpnpm dev
启动后,组件资源可通过 http://127.0.0.1:4874/@mycorp/ui-kit@1.0.0/dist/index.mjs 访问。
4、在 TinyEngine 中注册物料
执行 pnpm splitMaterials 生成物料模板,然后在 materials/packages.json 中添加:
git clone -b develop git@github.com:opentiny/tiny-engine.gitcd tiny-enginepnpm installpnpm dev
再为每个组件写一个 component.json 描述其属性、事件、图标等。
搞定!现在你的业务组件就能在画布上自由拖拽了。
五、不止于页面搭建:TinyEngine 的未来想象力
TinyEngine 的野心不止于“搭页面”。根据官方路线图,它正在向 AIGC + 模型驱动 演进:
AI 辅助生成:输入“我要一个带搜索的日志列表页”,AI 自动生成 Schema 和代码。
流程编排:不仅页面,还能可视化编排审批流、数据流。
多端输出:同一份 Schema,可生成 Web、移动端、大屏甚至服务端渲染(SSR)应用。
更重要的是,它完全开源(Apache 2.0 协议),你可以 fork、商用、深度定制,没有任何法律风险。

TinyEngine 的出现,标志着低代码正在从“黑盒工具”走向“开放平台”。它不试图取代程序员,而是把重复劳动自动化,把创造力还给开发者。
如果你:
厌倦了重复造轮子
想为团队搭建统一的页面搭建平台
对“可视化编程”充满好奇但又不愿放弃代码控制权
那么,TinyEngine 值得你花一个周末试试。
GitHub 地址:https://github.com/opentiny/tiny-engine
官方文档:https://opentiny.design/tiny-engine