Framework
thinkgem/jeesite5 avatar
thinkgem/jeesite5

JeeSite 5 is a Spring Boot admin platform that ships two front ends and three Spring branches

A Java rapid development platform - more than a framework, it's a lightweight, enterprise-grade low-code solution with support for domestic (China) tech stacks, SM cryptography, an AI assistant, and online code generation based on Spring Boot. Includes org/role/user management, menu and button permissions, data permissions, content management and workflow. Modules can be added or removed quickly; microkernel architecture; rich security options and password policies; online file preview; message push; third-party login; online task scheduling; supports clustering, multi-tenancy, multiple data sources, read-write splitting and microservices. See the temp branch for ongoing updates.

1,805 stars842 forksJavaScriptApache-2.0

At a glance

What is it?
A Chinese enterprise low-code platform whose community edition stays on Apache-2.0, whose front end exists as both a Vue 3 separated build and a Beetl classic build, and whose GitHub metadata says JavaScript for a Java server.
Who is it for?
JeeSite 5 is best understood as a packaged answer to enterprise admin work in China, which means it is a different proposition from a framework you adopt on your own terms. The value is in the parts it has already settled: organization, role, user, menu and button permissions, data permissions, dictionaries, scheduled jobs, and a workflow engine on Flowable 8 with a BPMN designer.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 8, 2026, and from our analysis. They are not legal advice.

Editorial analysis

Two front ends over one Spring Boot service

The most consequential thing about JeeSite is that the same back end supports two completely different front-end stacks, and the README is clear that this is deliberate rather than legacy residue. The separated edition uses Node.js, TypeScript, Vue 3, Vite, Antdv Next, and Vben Admin. The classic edition uses Beetl for templating, jQuery 3, Bootstrap 3, and AdminLTE.

The consequence for browser support follows directly. The separated edition claims Chrome 87 or newer, Edge, Firefox, and domestic browsers. The classic edition claims IE10 and above in addition to modern browsers, which is only true because it targets older frontend primitives.

The architecture is also split across repositories in a way that is easy to get wrong. `jeesite5` holds the Java server. `jeesite-vue` holds the separated front end. `jeesite` is a collection repository, and its branch is the same `v5.springboot4` name the server uses. The README states the point about why: one back-end Web service supports both the separated and the full-stack front-end stacks.

If you are evaluating this for a new build, the honest framing is that you are choosing between two front ends, not between two versions of one. The classic path exists because a large installed base of Chinese enterprise systems runs on older browser requirements, and the separated path exists because new work should not.

GitHub calls it JavaScript, and the stack list calls it Java

GitHub reports the primary language as JavaScript, which does not describe the project that is actually in front of you. The backend is Spring Boot with Spring Framework 7, Apache Shiro, and J2Cache as the main framework, with Apache MyBatis 3, Hibernate Validator 9, and Alibaba Druid for persistence.

There is a partial explanation. GitHub computes language statistics from bytes of code, not from intent, and this repository contains the `web-vue/` directory, the Beetl templates under the classic path, plus script assets. With those present, JavaScript can win on raw volume even though no server code runs on it.

The repository topics corroborate the split rather than contradict it. They list `java`, `spring-boot`, `spring-mvc`, `mybatis`, and `shiro` alongside `beetl`, `bootstrap3`, and `jquery`. The two `jquery` and `beetl` entries are what makes the language field read the way it does.

Neither fact settles the other, so treat them as two descriptions of the same repository: a Java server that also ships template and script assets. The practical advice is to ignore the language badge when estimating what you are adopting, and read the `pom.xml` at the root and the module list in the tree instead.

Three Spring branches, and release tags that spell boot wrong

The default branch is `v5.springboot4`, and two sibling branches, `v5.springboot3` and `v5.springboot2`, carry the older Spring Boot lines. The README maps each one to its upstream repository. This is a maintenance model where major framework lines coexist indefinitely rather than a project that expects you to upgrade through them.

The releases carry a quirk worth flagging because it will trip up any script that parses tags. The three most recent are `v5.19.0.springboo4` from 2026-09-17, `v5.18.1.springboo4` from 2026-08-05, and `v5.18.0.springboo4` from 2026-07-26. The branch is `v5.springboot4`, and the tag reads `springboo4`, missing the t. The two spellings differ, and neither has been corrected in the recent tag set.

Release notes themselves are not in the repository. Each of the three releases points at a WeChat article for what shipped and at `https://jeesite.com/docs/upgrade/` for the upgrade log. So the practical upgrade history lives on the documentation site, and the GitHub release list functions as a version index and nothing more.

One more metadata field points at the wrong major version. The repository's homepage field is set to `https://gitee.com/thinkgem/jeesite4/issues`, an issue tracker for JeeSite 4, while the repository is the JeeSite 5 line. The README's own issue links point at the JeeSite 5 tracker on Gitee instead, so follow the README over the homepage field.

What the code generator actually produces

The generator is the center of the product, and the README describes it as creating business module code projects and microservice module code projects, generating both front-end and back-end code. Supporting it are online data source management and table modeling.

A list of the generated core modules gives a good sense of the scope: organization structure, users, roles, posts, administrators, permission auditing, menu and button permissions, data permissions, module management, system parameters, dictionary management, system monitoring, and data monitoring.

The extension list is where the weight sits: a workflow engine, content management, message push, single sign-on, third-party login, online job scheduling, object storage, visual data dashboards, a report designer, online file preview, internationalization, full-text search, and a unified authentication service. The workflow engine is Flowable 8, described as BPMN compliant, with an online process designer and features for return, withdrawal, and free flow.

The README is unusually direct about who this is for. It says the platform is aimed at giving junior developers strong support so they can build complex business features efficiently, while freeing more experienced developers to focus on strategically meaningful work. That is a candid statement of the value proposition, and it also tells you the intended buyer: a team that needs admin CRUD delivered quickly and has limited time to build the permission model from scratch.

One compose file, a domestic registry, and an H2 fast edition

The repository tree lists nineteen entries, and only one of them is a file you can run without a build toolchain. Everything else is source: `parent/`, `common/`, `modules/`, and a set of web modules named `web/`, `web-api/`, `web-ai/`, `web-fast/`, `web-mini/`, and `web-vue/`, alongside `bin/`, `pom.xml`, `terms.md`, `LICENSE`, and two compose files.

That single file is the quickest way to see the project running. `docker-compose.yml` is named `jeesite-fast` and describes one service, `jeesite-fast`, with the comment noting it uses an H2 database, so it needs no external database to start.

bash
# docker-compose -f docker-compose.yml up -d

The image does not come from Docker Hub. It is pulled from a personal Alibaba Cloud registry mirror, `crpi-u3zm0t8trv68xpyx.cn-qingdao.personal.cr.aliyuncs.com/thinkgem/jeesite:latest`, and the port mapping is `8980:8980`. Data persists to `./.docker/fast` mounted at `/data`.

Two things follow. The `latest` tag means the image and the source branch can drift apart with no way to pin a version from the tag alone. And the `restart: unless-stopped` line is present but commented out, which is a deliberate choice for a demo compose file rather than an oversight in production guidance.

Community edition under Apache-2.0, commercial edition on one codebase

The README is unusually explicit about the licensing model, and it is the part most likely to matter to an evaluator. The community edition is open source under the Apache License 2.0, described as free to use permanently, and the repository license field matches.

The commercial edition is described as extending the community edition while the team maintains a single codebase, which is offered as the reason iteration stays fast and stability is protected. The claim is that you avoid duplicated effort, and the intended reassurance is that community users do not need to worry about the project stalling or about the commercial line drifting away from theirs.

That is a credible answer to a common concern about open-core projects, but it is a claim in the README rather than something the repository structure demonstrates. What the repository does show is scope: features that read as platform infrastructure, such as the unified authentication service, the visual dashboard, the report designer, and the internationalization layer, are exactly the category where a commercial edition would add depth.

For a reader deciding whether to adopt, the useful next step is to check the feature and function pages linked from the README rather than infer the boundary from the source. The source tree alone will not tell you which modules are complete in the community edition and which are stubs awaiting the commercial one.

Editorial conclusion

JeeSite 5 is best understood as a packaged answer to enterprise admin work in China, which means it is a different proposition from a framework you adopt on your own terms. The value is in the parts it has already settled: organization, role, user, menu and button permissions, data permissions, dictionaries, scheduled jobs, and a workflow engine on Flowable 8 with a BPMN designer. Two practical notes before you start. First, pick your Spring Boot line deliberately, because `v5.springboot4`, `v5.springboot3`, and `v5.springboot2` are parallel long-lived branches rather than upgrade steps, and the release tags for the current line carry a misspelling of the word boot. Second, expect the documentation to live off GitHub at jeesite.com/docs, since the repository itself carries one compose file and little else beyond the source tree. Start by reading the feature page there, then clone the branch matching your Spring version.

Frequently asked questions

Is JeeSite 5 free to use?

The community edition is released under the Apache License 2.0 and the README describes it as permanently free to use. A commercial edition extends the community edition and is built on the same codebase, so the paid tier buys added functionality rather than a separate product.

What does the JeeSite 5 code generator produce?

It generates both front-end and back-end code for business modules and microservice modules, supported by online data source management and data table modeling. Out of the box it covers organization, users, roles, posts, menu and button permissions, data permissions, dictionaries, and system monitoring.

Which Spring Boot version does JeeSite 5 use?

The default branch `v5.springboot4` targets Spring Boot 4 with Spring Framework 7, and sibling branches `v5.springboot3` and `v5.springboot2` carry the older lines, so the three coexist rather than replace one another. Note that the release tags for the current line are spelled `v5.19.0.springboo4`, without the t in boot.

Which front end does JeeSite 5 use, Vue or Beetl?

Both, over one back end. The separated edition uses Node.js, TypeScript, Vue 3, Vite, Antdv Next, and Vben Admin and its source lives in the `jeesite-vue` repository. The classic edition uses Beetl, jQuery 3, Bootstrap 3, and AdminLTE and supports IE10 and above.

Official sources

  1. License: Apache-2.0
  2. Project website
  3. README
  4. Releases
  5. thinkgem/jeesite5 on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/thinkgem-jeesite5.svg)](https://hysenlabs.com/projects/thinkgem-jeesite5)