# erupt **Repository Path**: elfbobo_admin/erupt ## Basic Information - **Project Name**: erupt - **Description**: 🚀 非代码生成器,纯注解开发、零前端代码、零 CURD、不生成任何代码、自动建表、注解式API,支持所有主流数据库,支持自定义页面,支持多数据源,提供二十几类业务组件,十几种展示形式,逻辑删除,前端后端分离等。 核心技术:Spring Boot、JPA、Reflect、TypeScript、NG-ZORRO等。 开源不易,记得右上角点个star鼓励作者 ⭐️ ~ - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://www.erupt.xyz - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1418 - **Created**: 2021-10-13 - **Last Updated**: 2025-09-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [中文](./README.md)   |   English

logo

ERUPT   🚀   An Efficient Low-Code Engine for Developers

Low-Code + AI, Making Development Easier

https://www.erupt.xyz

---

maven-central license Apache 2.0 GitHub stars GitHub forks gitcode Gitee star Gitee fork

GitHub Repo   |   GitCode Repo   |   Gitee Repo   |   Official Website   |   Live Demo   |   Module Ecosystem   |   📕 Documentation

--- > A revolutionary low-code development framework designed to boost enterprise-level backend development efficiency, significantly reducing development costs and complexity. > > More than just a tool, it is a strategic choice for optimizing development processes, enhancing team productivity, and accelerating digital transformation. > > Erupt delivers efficiency, flexibility, and control—dramatically shortening development cycles and allowing you to focus on core business. --- ## 🚀 Introduction | Intro **Erupt** is a universal low-code framework driven by Java annotations that dynamically renders and constructs pages and APIs. Zero front-end code, zero CURD, and automatic table creation — only one class file with annotation configuration is required to quickly develop enterprise-grade data management backends. Highly extensible, supporting CURD customization via `@DataProxy`, custom data sources, soft delete, LDAP, OSS, and more. ## 🎯 Low-Code Engine | Engine #### Transparent Mechanics & High Configurability: * **Annotation-driven, flexible configuration:** Control model behavior, UI rendering, data validation, and processing through annotations like `@Erupt`, `@EruptField`, and their rich properties. * **Open architecture:** Erupt’s modular core encourages developers to understand its internal mechanisms and adjust them as needed. * **Detailed logs and debugging support:** Helps developers track issues and understand internal execution flows. #### Beyond Traditional Code Generators: * **Runtime interpretation over static generation:** Erupt dynamically constructs applications through annotation parsing, avoiding bloated, hard-to-maintain generated code. * **Model-focused development:** Developers only need to define business models and annotations — Erupt handles UI rendering, data binding, API calls, and database interactions automatically. #### Deep Customization and Extensibility: * **Lifecycle hooks:** Key lifecycle points expose hooks for extending and adjusting behavior. * **`@DataProxy` interface:** Inject custom logic during data operations (e.g., before add, after edit, on query) for validations, transformations, permission control, etc. * **Custom components and views:** Easily integrate personalized front-end components or templates beyond built-in options. * **Custom data sources and dialects:** Extend support for specific databases or create your own SQL dialect adapters. #### Embracing the Spring Boot Ecosystem: * **Non-intrusive design:** Built on Spring Boot with deep Spring Data JPA integration without interfering with other Spring or third-party libraries. * **Standard JPA entities:** Erupt entity classes are standard JPA entities, reusable across other services or modules. * **Easy to integrate into existing projects:** Erupt Cloud can be progressively integrated to enhance or replace backend modules in existing Spring Boot projects. > Since 2020, Erupt has been continuously optimized and upgraded. It's already used by hundreds of companies and thousands of developers. Hundreds have contributed feature suggestions and code. ## 🥏 Beyond Code Generators While code generators improve efficiency, they produce large volumes of template code that are difficult to maintain and prone to technical debt once modified. Erupt offers a more elegant solution: * **Elevating configuration to code:** Erupt doesn’t generate code; it dynamically interprets annotations. Business logic is decoupled from core framework behavior — changing an annotation instantly updates system behavior. * **Higher abstraction:** Erupt abstracts common backend features into standardized annotations and components. Developers focus solely on business model definitions. * **Ongoing evolution and maintenance:** As a mature open-source framework, the Erupt team and community continuously enhance features and fix issues. You benefit from framework updates without maintaining generated code. ![result](readme/view.png) ![result](readme/edit.png) ```java @Erupt( name = "Simple Example", power = @Power(importable = true, export = true) ) @Table(name = "t_simple") // Database table name @Entity public class Simple extends BaseModel { @EruptField( views = @View(title = "Text"), edit = @Edit(title = "Text", notNull = true, search = @Search) ) private String input; @EruptField( views = @View(title = "Number", sortable = true), edit = @Edit(title = "Number", search = @Search) ) private Float number; @EruptField( views = @View(title = "Boolean"), edit = @Edit(title = "Boolean", search = @Search) ) private Boolean bool; @EruptField( views = @View(title = "Date"), edit = @Edit(title = "Date", search = @Search(vague = true)) ) private Date date; @EruptField( views = @View(title = "Slider"), edit = @Edit(title = "Slider", type = EditType.SLIDER, search = @Search, sliderType = @SliderType(max = 90, markPoints = {0, 30, 60, 90}, dots = true)) ) private Integer slide; @EruptField( views = @View(title = "Dropdown"), edit = @Edit( search = @Search, title = "Dropdown", type = EditType.CHOICE, choiceType = @ChoiceType(fetchHandler = SqlChoiceFetchHandler.class, fetchHandlerParams = "select id,name from e_upms_menu" ) ) ) private Long choice; } ``` [Feature Demo](https://www.erupt.xyz/#!/contrast) ## ⛰ Screenshots ## 🔗 Download and Usage No need to compile source code. Just add the following dependencies to your Spring Boot project: ```xml xyz.erupt erupt-admin LATEST-VERSION xyz.erupt erupt-web LATEST-VERSION ``` > Latest version: maven-central [Detailed Installation Guide](https://www.yuque.com/erupts/erupt/tpq1l9) ## 🌕 Live Demo Demo: [https://www.erupt.xyz/demo](https://www.erupt.xyz/demo) Account/Password: `guest / guest` **Supports modern browsers and runs on Electron or other Web standard-based environments** ## 🔭 Recommended Projects * [`Linq.J` – Object Query Language for JVM](https://github.com/erupts/Linq.J) * [`magic-api` – Rapid API Development Framework](https://github.com/ssssssss-team/magic-api) * [`Jpom` – Lightweight Online Build/Deploy/Monitoring Tool](https://gitee.com/dromara/Jpom) ## 🧩 Join the Community QQ Group: 836044286 🔥 WeChat Group: Follow the **EruptGuide** public account to get the latest group QR code (updated weekly) **ERUPT — Empower Java Developers to Build Backends More Efficiently and Flexibly. Join Us to Explore the Future of Low-Code in Professional Development!** ## ⛽️ Donate The author personally covers the costs of servers, domains, hosting, and maintenance. Open source is not easy — a cup of coffee is appreciated 🙏 [Donate Here](https://www.yuque.com/erupts/erupt/mwf15h) --- ### ⭐️ Licensed under Apache License 2.0 — Open Source and Free to Use. If You Like It, Please ⭐ Star the Project to Show Support! ---

Official Website   |   GITHUB   |   Documentation

---

Author: YuePeng   /   erupts@126.com