- 新增设备端与家属端远程拍照接口 - 新增截图实体字段(原始文件名、MIME类型、扩展名) - 补充截图上传信息记录 - 提取设备操作指令常量
Introduction
youlai-boot is an enterprise-grade permission management backend built on Spring Boot. It ships with the frontend vue3-element-admin and the mobile app youlai-app, and is one of 7 language implementations (Java / Node.js / Go / Python / PHP / C# / Rust) that share the same API specification and database schema. It is suitable for learning, reference, and secondary development of enterprise admin systems.
Core Features
-
🔐 Security — Spring Security + JWT/Redis dual-session model, token renewal, multi-device mutual exclusion
-
🛡️ Fine-grained permissions — 5-level RBAC: data → menu → button → API → field
-
⚡ Code generator — one-click generation of full-stack CRUD code
-
📦 Complete modules — users, roles, menus, departments, dictionaries, files, scheduled tasks, message center, operation logs
-
🌐 Multi-tenant SaaS — data isolation + tenant config, with a standalone youlai-boot-tenant edition
-
🔌 Real-time communication — SSE push: online user count, dictionary sync, notification broadcast
System Preview
PC
<td><img alt="PC Preview 1" width="400" src="./docs/images/preview/pc-01.png"></td>
<td><img alt="PC Preview 2" width="400" src="./docs/images/preview/pc-02.png"></td>
<td><img alt="PC Preview 3" width="400" src="./docs/images/preview/pc-03.png"></td>
<td><img alt="PC Preview 4" width="400" src="./docs/images/preview/pc-04.png"></td>
<td><img alt="PC Preview 5" width="400" src="./docs/images/preview/pc-05.png"></td>
<td><img alt="PC Preview 6" width="400" src="./docs/images/preview/pc-06.png"></td>
Mobile
<td><img alt="App Preview 1" width="200" src="./docs/images/preview/app-01.png"></td>
<td><img alt="App Preview 2" width="200" src="./docs/images/preview/app-02.png"></td>
<td><img alt="App Preview 3" width="200" src="./docs/images/preview/app-03.png"></td>
<td><img alt="App Preview 4" width="200" src="./docs/images/preview/app-04.png"></td>
Quick Start
Requirements: JDK 17+ · MySQL 8.0+ · Redis 6.0+
-
Clone:
git clone https://gitee.com/youlaiorg/youlai-boot.git -
Import database:
sql/youlai-admin.sql -
Adjust config (optional, a read-only online data source is configured by default):
src/main/resources/application-dev.yml -
Start and visit http://localhost:8000/doc.html
Default credentials: admin / 123456
Detailed guide: https://www.youlai.tech/docs/server/spring-boot/quick-start.html
Tech Stack
| Tech | Version | Description |
|:-----|:--------|:------------|
| Spring Boot | 4.0.5 | Core framework |
| Spring Security | 6.x | Auth & authorization |
| MyBatis-Plus | 3.5.15 | ORM |
| Druid | 1.2.24 | Connection pool |
| Redis + Redisson | 6.0+ / 4.1.0 | Cache · Session · Distributed lock |
| Caffeine | 2.9.3 | Local cache |
| XXL-Job | 3.2.0 | Distributed scheduled tasks |
| Knife4j | 4.5.0 | API docs |
| MapStruct | 1.6.3 | Object mapping |
| MinIO | 8.5.10 | Object storage |
Directory Structure
youlai-boot/
├── docker/ # Docker orchestration
├── docs/ # Docs and image assets
├── sql/ # Database init scripts
├── src/ # Source code
│ ├── auth/ # Auth module (login/logout/token/captcha)
│ ├── codegen/ # Code generator
│ ├── common/ # Common module (constants/enums/exceptions/response/utils)
│ ├── config/ # Configuration (Security/Redis/Captcha/OSS/Email etc.)
│ ├── framework/ # Infrastructure layer
│ │ ├── mybatis/ # MyBatis-Plus config
│ │ ├── security/ # Spring Security (filters/token/utils)
│ │ └── web/ # Web layer (global exception/CORS/rate limit)
│ ├── support/ # Capability services
│ │ ├── file/ # File storage (MinIO/Alibaba Cloud OSS/local)
│ │ ├── mail/ # Email service
│ │ ├── sms/ # SMS service
│ │ └── sse/ # SSE push
│ └── system/ # Business (user/role/menu/dept/dict etc.)
└── pom.xml # Maven dependency management
Ecosystem
Frontend
| Project | Stack | Description |
|:-----|:------|:------------|
| vue3-element-admin | Vue 3 + Element Plus | PC admin frontend (recommended) |
| youlai-app | Vue 3 + UniApp | Mobile App |
Backend
| Project | Stack | Description | | youlai-boot | Spring Boot + MyBatis-Plus | Java (recommended) | | youlai-nest | NestJS + TypeORM | Node.js | | youlai-gin | Go + Gorm | Go | | youlai-django | Django + DRF | Python | | youlai-fastapi | FastAPI + SQLAlchemy | Python | | youlai-think | ThinkPHP + ThinkORM | PHP | | youlai-aspnet | ASP.NET Core + EF Core | C# | | youlai-axum | Axum + SeaORM | Rust |
youlai-boot also provides the following variants and branches: Multi-Tenant · MyBatis-Flex · Spring Boot 3 · PostgreSQL · Multi-Module
The eight backends share the same RESTful API specification and database schema, so the frontend can switch seamlessly.
Documentation
| Resource | Link |
|:-----|:-----|
| 📖 Full docs site | www.youlai.tech |
| 🖥️ PC live preview | vue.youlai.tech |
| 📱 Mobile live preview | app.youlai.tech |
| 🔗 Apifox API docs | apifox.com |
| 🔗 Local API docs | localhost:8000/doc.html |
License
Released under the Apache License 2.0; free for commercial use.
<td align="center">
<img src="./docs/images/qrcode/wechat-official.jpg" height="180" alt="Official WeChat Account"><br>
<sub>Official WeChat Account</sub>
</td>
<td> </td>
<td align="center">
<img src="./docs/images/qrcode/wechat-mp.jpg" height="180" alt="Mini Program"><br>
<sub>Mini Program</sub>
</td>
<td> </td>
<td align="center">
<img src="./docs/images/qrcode/wechat-personal.png" height="180" alt="Add author on WeChat"><br>
<sub>Add author on WeChat</sub>
</td>
Technical discussion · Feedback · Business cooperation
