Skip to content

Topics

Each issue takes a single core topic and weaves Erupt's capabilities — scattered across source code, annotations, and modules — into a readable, hands-on, competitor-comparable narrative.

Cadence: roughly one issue per month.

Erupt WeChat Official Account
WeChat · Official Account
Scan to follow the Erupt official account

Each issue debuts here, along with release notes, source-code deep dives, and community case studies. Reply "加群" to join the user group, or "入门" for a 5-minute getting-started guide.

📚 Scroll down for published topics → Archive

Archive

#08
Annotation DX

What you write in an annotation isn't a string — it's code with syntax

The favorite rebuttal against annotation-based low-code is "annotations just turn SQL into unhighlighted dumb strings." Erupt bets the reverse — it uses JetBrains @Language to inject 10 embedded languages (hql/sql/VTL/markdown/java…) into its own annotation attributes, so a single sql="..." gets highlighting, completion, and error checking in IntelliJ; @Comment then makes the same attribute self-describing for both humans and AI.

2026-07-01·9 min read
#07
Runtime Designer

ByteBuddy × JsonAnnotationProxy × @EruptDataProcessor: We built a designer, but it compiles into a real @Erupt class

Nearly every online form designer stores the design as a JSON DSL and renders it at runtime through an interpreter. erupt-designer bets the opposite way — at runtime the design is compiled by ByteBuddy into a real @Erupt class, reusing the exact same pipeline as a hand-written entity: Gson, reflection, validation, DataProxy, @EruptFlow. No restart, no generated code, no interpreter.

2026-06-17·10 min read
#06
Secure by Default

@Power × SHA512+Salt × PowerHandler: in low-code, "security" shouldn't be the column you fill in right before launch

For most domestic admin frameworks, security is a "configure it before launch" checklist — RBAC, button permissions, password encryption are all to-do items. Erupt bets the reverse: security is the default value of an annotation. @Power defaults export/importable to false, PowerHandler enforces at runtime, and passwords migrate from MD5 to SHA-512+Salt automatically on the next change — no downtime, no rehash script.

2026-06-10·10 min read
#05
Design Philosophy

Annotation × Spring × Git: the most controllable low-code platform — no verb called "generate"

Chinese low-code = drag-and-drop canvases or on-platform Node.js editors, all built for business operators. Erupt bets on the opposite lane — low-code for backend engineers: annotations are the config, extension points are Spring beans, the source of truth lives in Git, and the framework writes zero bytes into your source tree. 17 LLMs + A2A + memory + @AiToolbox ship as default dependencies, not AI add-ons.

2026-06-01·10 min read
#04
Cube × LLM

Let the BI dashboard answer "why did it change" — the new shape of Erupt Cube × LLM

Traditional BI tools give you the "what"; Erupt Cube × LLM gives you the "why". The @EruptCube annotation defines a semantic layer, and the LLM grows three eyes alongside the domain model (cubeList → cubeMetadata → cubeQuery): it writes the SQL, renders the chart, and produces the attribution. This issue stitches together the AI Harness from #01 and the "annotation-first" narrative from #03.

2026-05-28·11 min read
#03
AI × Flow × Cloud

While MyBatis-Plus still battles SQL DSLs, Erupt wraps a whole admin infrastructure around JPA

In Erupt, a single @Entity grows ten identities — UI, RBAC, REST API, auto DDL, i18n, DataProxy, lambda queries, AI Agent, workflow engine, cross-service aggregation. The annotation is the config surface; metadata = UI = API = LLM Tool.

2026-05-25·10 min read
#02
Design Philosophy

@Erupt × DataProxy × Handler: why we did not go with a drag-and-drop canvas

While DingTalk Yida, Jiandao Cloud, and JeecgBoot all bet on "canvas" or "canvas-generates-code", Erupt still bets on the source code itself — a single @Erupt annotation, a DataProxy<T> extension point, and a set of Handler interfaces. This issue explains why.

2026-05-22·9 min read
#01
AI Harness

50+ LLMs × A2A × Memory: how Erupt's AI Harness came to life

17 providers, the A2A cross-agent protocol, cross-session Memory, plus a Tool / MCP call you can wire up with a single Java annotation — why we believe a Java backend shouldn't be locked into the "AI app generator" narrative of products like ToolJet.

2026-05-22·10 min read

Want to submit a topic?

A topic is not a changelog or a module manual — it tells the story of how a single idea takes shape inside Erupt. If your Erupt journey carved out a unique path, propose it on GitHub Discussions; accepted ideas will be published as a Topic.

Contributors

The avatar of contributor named as YuePeng YuePeng
The avatar of contributor named as Claude Opus 5 (1M context) Claude Opus 5 (1M context)

Changelog

Released under the Apache-2.0 License.