Erupt 低代码 + AI 全开源
Erupt 是一个低代码 全栈类 框架,它使用 Java 注解 动态构建页面,及增、删、改、查、权限控制等功能。
零前端代码、零 CURD、自动建表,仅需 一个类文件 + 简洁的注解配置,快速开发企业级 Admin 管理后台。
🦞 AI & CLAW
🦞 Erupt AI Claw
通过自然语言直接驱动服务器,操作注解驱动的数据与业务——像与同事对话一样简单
将大模型能力无缝融入低代码开发,让 AI 赋能每一个业务场景
本次更新内容
🐞 修复 Date 类型修饰 Erupt 对象时默认使用 UTC 时间的问题
🐞 修复编辑场景下 @OnChange 注解导致后端联动值覆盖数据库原始数据的问题
🐞 修复 @JoinColumn 注解 referencedColumnName 配置不生效的问题,感谢 jx2047 贡献的代码
🧩 时间字段导出 Excel 时,自动根据用户当前语言环境格式化时间 #98d579
🧩 erupt-flow 新增多种审批方式:由其他节点分配审批人、发起人自选审批人、分管领导审批
🧩 erupt-flow 新增办理节点,优化流程画布交互体验与功能排版
🧩 重构时间格式处理逻辑,统一采用 ISO 8601(yyyy-MM-dd'T'HH🇲🇲ss.SSS)进行交互,返回时间自动跟随浏览器语言环境格式化,对国际化场景更加友好
🦞 开源 eurpt-ai-claw 模块,可通过 AI 操作任意 Erupt 数据,支持 Skill、File、Shell 调用等能力
🌟 Spring Boot 版本升级至 3.5.13
🌟 eruptUser 新增分管组织字段,并新增 e_upms_user_org_division 表用于存储分管组织数据
🌟 erupt-ai 增加安全策略,AI 对话能力不再开放给所有用户,后端 API 使用菜单权限隔离此入口
🌟 erupt-ai 完全重构:前端基于 Angular 重新构建,后端使用 Langchain4j 重写,AI Tool 声明改为方法级
🌟 erupt-ai LLM 新增 Claude、Gemini、Doubao 支持
🌟 erupt-ai 支持调用外部 MCP Server
🌟 erupt-ai 支持通过 ReAct 模式智能调度已注册的 AI 工具,并展示推理过程
🌟 新增 skill 文件,方便 AI 与 erupt 更好的交互:commands
🌟 开源 erupt-vote 投票插件,感谢 @PPLINGHUFEI 的贡献
🌟 EruptMenu 菜单数据统一以英文存储,前端页面自动翻译为对应语言展示
@Erupt(
name = "简单的例子",
power = @Power(importable = true, export = true)
)
@Table(name = "t_simple") //数据库表名
@Entity
public class Simple extends BaseModel {
@EruptField(
views = @View(title = "文本"),
edit = @Edit(title = "文本", notNull = true, search = @Search)
)
private String input;
@EruptField(
views = @View(title = "数值", sortable = true),
edit = @Edit(title = "数值", search = @Search)
)
private Float number;
@EruptField(
views = @View(title = "布尔"),
edit = @Edit(title = "布尔", search = @Search)
)
private Boolean bool;
@EruptField(
views = @View(title = "时间"),
edit = @Edit(title = "时间", search = @Search(vague = true))
)
private Date date;
@EruptField(
views = @View(title = "滑动条"),
edit = @Edit(title = "滑动条", type = EditType.SLIDER, search = @Search,
sliderType = @SliderType(max = 90, markPoints = {0, 30, 60, 90}, dots = true))
)
private Integer slide;
@EruptField(
views = @View(title = "下拉选择"),
edit = @Edit(
search = @Search,
title = "下拉选择", type = EditType.CHOICE,
choiceType = @ChoiceType(fetchHandler = SqlChoiceFetchHandler.class,
fetchHandlerParams = "select id,name from e_upms_menu"
)
)
)
private Long choice;
}
特性
-
自动建表:表结构自动生成,无需手动建表
-
易于上手:会简单的 Spring Boot 基础知识即可
-
使用简单:仅需了解 @Erupt 与 @EruptField 两个注解即可上手开发
-
代码简洁:仅需一个 .java 文件,template、controller、service、dao 都不需要创建
-
功能强大:动态条件处理,逻辑删除,LDAP,自定义登录逻辑,RedisSession,操作日志等
-
多数据源:支持:MySQL、Oracle、SQL Server、PostgreSQL、H2,甚至支持 MongoDB
-
高扩展性:支持自定义数据源实现、自定义登录逻辑、动态权限管理、生命周期函数、自定义 OSS
-
大量组件:滑动输入、时间选择、一对多、图片上传、代码编辑、自动完成、树、多对多、地图等 23 类组件
-
丰富展示:普通文本、二维码、链接、图片、HTML、代码段、iframe、swf 等
-
低侵入性:几乎所有功能都围绕注解而展开,不影响 Spring Boot 其他功能或三方库库的使用
-
前后端分离:后端与前端可分开部署
-
响应式布局:支持 PC 端手机端等各种规格的设备中使用
-
自定义页面:支持自定义页面,自定义弹出层,且支持:原生 H5 / Freemarker / Thymeleaf 等方式渲染
-
前端零代码:前端布局自动构建,一行前端代码都不用写
-
无需二次开发:仅需引用 jar 包即可 !
完全不需要了解 Angular / React / Vue / Jquery
而且不需要了解 JavaScript / HTML / CSS
甚至不需要了解 Spring MVC / Mybatis / SQL
在线体验
支持主流 4 款现代浏览器,以及 Internet Explorer 11+,可直接运行在 Electron 等基于 Web 标准的环境上
演示截图