# RuoYi-Vue-Pro (Yudao): a Spring Boot modular admin platform with 20-plus business modules

> RuoYi-Vue-Pro, also known as Yudao, is a Java admin platform built on Spring Boot and MyBatis Plus with Flowable workflow, SaaS multi-tenancy and a large set of optional business modules. It is broad by design, and that breadth is the main thing to weigh before adopting it.

**YunaiV/ruoyi-vue-pro** — 🔥 官方推荐 🔥 RuoYi-Vue 全新 Pro 版本，优化重构所有功能。基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 微信小程序，支持 RBAC 动态权限、数据权限、SaaS 多租户、Flowable 工作流、三方登录、支付、短信、商城、CRM、ERP、MES、IM、AI 大模型、IoT 物联网等功能。你的 ⭐️ Star ⭐️，是作者生发的动力！

- Repository: https://github.com/YunaiV/ruoyi-vue-pro
- Website: https://doc.iocoder.cn/
- Stars: 39,442 · Forks: 8,526
- Language: Java
- License: MIT
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/yunaiv-ruoyi-vue-pro

## What RuoYi-Vue-Pro solves, and for whom

RuoYi-Vue-Pro is a fork-and-extend starting point for Chinese-market enterprise back-office systems. The README describes it as a rapid development platform built around developers, with all code open source and free for individuals and enterprises. It targets teams that would otherwise spend months assembling the same foundation: authentication, menus, role and button-level permissions, tenant isolation, file storage, SMS, payment, and a workflow engine.

The scope is unusually wide. The full version covers system functions, infrastructure, member center, data reports, workflow, mall, WeChat official accounts, CRM, ERP, WMS, MES, HRM, FMS, PMS, IM, AI large models and IoT. The mini version, yudao-boot-mini, keeps only system and infrastructure functions. That split is the project's answer to its own size: you are not expected to run everything.

Who is it for? Java teams building an internal or commercial admin product who want a working baseline rather than a blank Spring Boot project. It is less suitable for teams whose stack is not Java and Vue, because the platform assumes both.

## The module architecture behind the yudao-server entry point

The repository layout tells most of the story. At the top level you find yudao-dependencies, yudao-framework, yudao-server, and a row of yudao-module-* directories: ai, bpm, crm, erp, fms, hrm, im, infra, iot, mall, member, mes, mp, pay, pms, report, system, wms. Each business capability is its own Maven module, and yudao-server is the deployable Spring Boot application that pulls in the ones you enable.

That is a deliberate trade-off. Module boundaries are physical, so removing CRM or IoT means removing a dependency rather than deleting packages. The cost is a large multi-module Maven build and a long dependency tree; the README lists MySQL, MyBatis Plus, Redis, Redisson, Spring Security, Flowable and Vue among the topics, and each module brings its own integrations.

On the backend, authentication uses Spring Security with token and Redis, supporting multiple terminal types and SSO. Permissions are dynamic menus with button-level control, cached in Redis. Multi-tenancy is described as a transparent lower-layer wrapper, so tenant isolation is handled below the business code rather than repeated in every service. Workflow runs on Flowable with dynamic forms, online process design, countersign and or-sign, and several task assignment modes. The admin front end is Vue 3 with element-plus or vben (ant-design-vue), with a Vue 2 element-ui version also available; mobile uses uni-app for APP, mini program and H5 from one codebase.

## Installing RuoYi-Vue-Pro: branch choice, SQL and first login

The README points to the quick start document at doc.iocoder.cn/quick-start/ for startup steps, and the version table is the first decision. The master branch is JDK 8 with Spring Boot 2.7, master-jdk17 is JDK 17/21 with Spring Boot 3.5, and master-jdk25 is JDK 25 with Spring Boot 4.x. Pick the branch that matches the JDK you already run, because the three are not interchangeable.

The repository ships a sql/ directory alongside script/ and the Maven modules. The database scripts live there, and the quick start document explains which ones to execute for your database. MySQL is the default in the README; Oracle, PostgreSQL, SQL Server, MariaDB, DM (达梦) and TiDB are listed as alternatives.

The server depends on Redis, so a running Redis instance is required before startup. The README does not document a rollback procedure for schema changes, and the sql/ directory is the only migration mechanism it points to, which matters if you plan to track upstream changes.

The admin front end is a separate repository. The README lists yudao-ui-admin-vue3 for Vue 3 with element-plus, yudao-ui-admin-vben for the vben variant, and a Vue 2 element-ui version. Demo addresses are given for all three, so you can inspect the UI before installing anything. After login you should see the dynamic menu tree, which is generated from the permission data loaded during setup.

## Where RuoYi-Vue-Pro becomes the wrong tool

The main limitation is that the full version is a collection of modules with different levels of maturity, and the README does not describe a per-module support policy. The release notes for v2026.08 announce HRM and FMS as new additions, which means those modules are the newest and least exercised parts of the tree. Treating all twenty-odd modules as production-equivalent is a mistake; the system, infra and BPM modules have clearly been around longer than the business suites.

Second, the database layer is not portable in practice. MySQL is the documented default, and although the README lists Oracle, PostgreSQL, SQL Server, MariaDB, DM and TiDB, the SQL scripts in sql/ are the real constraint. If your organisation runs PostgreSQL, you should verify the scripts and the MyBatis Plus mappings against that dialect before promising a deployment date.

Third, the project is a platform, not a library. Adding it to an existing application means adopting its module structure, its permission model and its tenant wrapper. Teams that only need workflow or only need RBAC will find a smaller Flowable or Spring Security integration easier to reason about. The mini version exists for exactly this reason, but it removes workflow, mall, CRM, ERP and the rest, so if you need one of those you are back to the full version.

## RuoYi-Vue-Pro compared with RuoYi-Vue-Plus and yudao-cloud

The README's own project table names two related alternatives. RuoYi-Vue-Plus is a separate community project that people search for alongside this one; the repository does not describe its internals, so the honest comparison is limited to what this repository states about itself. What can be said is that RuoYi-Vue-Pro positions itself as the Pro version of RuoYi-Vue with all functions refactored, and it ships a much larger module set than a typical admin scaffold.

The more concrete alternative inside the same family is yudao-cloud, which the README lists as the Spring Cloud microservice architecture counterpart to this project's Spring Boot multi-module architecture. That is a real architectural fork, not a rebranding. If your organisation already runs service discovery, gateways and distributed configuration, yudao-cloud matches that shape. If you want a single deployable jar with modules as Maven dependencies, RuoYi-Vue-Pro is the one to read.

The third option is yudao-boot-mini. It is the same codebase reduced to system and infrastructure functions. The migration document at doc.iocoder.cn/migrate-module/ claims 5 to 10 minutes to move modules from the full version to the mini version on demand. That claim is worth testing early, because if it holds, the mini version becomes the sane default and the full version becomes a catalogue.

## Licence, maintenance and the cost of upgrading

The licence is MIT, and the README states that there will be no commercial version, now or in the future, with all code open source and free for individuals and enterprises. MIT is permissive, so redistribution and commercial use are permitted under its terms; the usual obligations around copyright notice and the absence of warranty apply. This is not legal advice, and if you embed the platform in a product you should have the licence text reviewed by whoever handles that in your organisation.

Maintenance is active by the only measure available: the last push was on 2026-09-04, and releases v2026.08 for jdk8/11, jdk17/21 and jdk25 were published on 2026-09-02. The repository is not archived. Three parallel branches, however, are the upgrade cost. A fix landed on master may need to be ported to master-jdk17 and master-jdk25, and if you have forked the code to add business logic, you carry that porting yourself.

The module model softens this. Because yudao-server is a thin assembly of yudao-module-* artifacts, you can pin the modules you use and upgrade them individually, at the risk of drifting from the tested combination. The README does not document a supported upgrade path between releases, and the sql/ directory is the only schema migration artefact it names, so plan for manual schema review on each upgrade.

## Conclusion

Adopt RuoYi-Vue-Pro if you need a Java admin base that already contains RBAC, multi-tenancy, Flowable workflow and optional business modules, and you are willing to run MySQL, Redis and a multi-module Maven build. Do not adopt it if you want a small dependency surface, a non-Java stack, or a project where every module is independently maintained. Before committing, verify which branch matches your JDK (master for JDK 8, master-jdk17, master-jdk25), check whether the business modules you need exist in the full version or must be migrated from the mini version, and read the migration documentation at doc.iocoder.cn/migrate-module/ to confirm the module split. The last push was on 2026-09-04, and the most recent release, v2026.08, added HRM and FMS modules.

## FAQ

### Which JDK and Spring Boot version should I choose for RuoYi-Vue-Pro?

The README maps master to JDK 8 with Spring Boot 2.7, master-jdk17 to JDK 17/21 with Spring Boot 3.5, and master-jdk25 to JDK 25 with Spring Boot 4.x. Choose the branch that matches the JDK your team already runs, since the three are separate branches rather than configuration options.

### What is the difference between the full version of RuoYi-Vue-Pro and yudao-boot-mini?

The full version includes system functions, infrastructure, member center, data reports, workflow, mall, WeChat official accounts, CRM, ERP, WMS, MES, HRM, FMS, PMS, IM, AI large models and IoT. The mini version keeps only system and infrastructure functions, and the README points to a migration document for moving modules between the two.

### Does RuoYi-Vue-Pro support databases other than MySQL?

The README lists MySQL, Oracle, PostgreSQL, SQL Server, MariaDB, DM (达梦) and TiDB as supported databases, with MySQL as the default in the described stack of MySQL and MyBatis Plus. The sql/ directory in the repository holds the schema scripts, so check that the scripts match the database you intend to use.

## Sources

- [License: MIT](https://github.com/YunaiV/ruoyi-vue-pro/blob/master/LICENSE)
- [Project website](https://doc.iocoder.cn/)
- [README](https://github.com/YunaiV/ruoyi-vue-pro/blob/master/README.md)
- [Releases](https://github.com/YunaiV/ruoyi-vue-pro/releases)
- [YunaiV/ruoyi-vue-pro on GitHub](https://github.com/YunaiV/ruoyi-vue-pro)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/yunaiv-ruoyi-vue-pro
