Overview
A versatile scaffolding solution built with SpringBoot and Vue3 designed for rapid application development.
This project serves as a foundational template for both front end and backend systems, offering automated code generation capabilities for SpringBoot and Vue applications. It's an evolving open-source initiative crafted by developers aiming to streamline the development workflow.
GitHub Repository
Gitee Repository
Documentation (Under Construction)
Live Demo (Initial Version Available)
Technical Stack
Backend Components
The server-side component is developed using SpringBoot and MyBatis Plus, with its code generasion module inspired by the Ruoyi framework.
- Java 8
- SpringBoot v2.7.12
- MyBatis Plus v3.5.2
- Lombok
- MySQL v8.0+
- Redis
- ...
Frontend Components
The frontend is constructed upon the vue-next-admin framework.
- Vue 3.x
- Composition API with setup syntax
- TypeScript
- Vite
- Element Plus
- Vue Router Next
- Pinia
Feature List
| Feature Name | Description | Status |
|---|---|---|
| User Management | Administer platform users | - |
| Role Management | Manage roles within the system | - |
| Menu Management | Control menu structures | - |
| Department Management | Tree table data handling playground | - |
| Dictionary Management | One-to-many relationship model playground | - |
| System Configuration | Single table data handling playground | - |
| Code Generation | Automatically generate SpringBoot and Vue code. Supports single table, tree table, and one-to-many models | - |
| Additional Features | This project provides basic functionality. Further features will be released through separate repositories; stay tuned for updates. | - |
Preview of Features
Login Interface
Dashboard View
User Administration
Menu Configuration
Dictionary Editing Page
Code Generator - Configuration Panel
Code Generator - Preview Screen
Project Structure
Backend Module Layout
maple-admin-system ------------ Module Name
├─src
│ └─main
│ ├─java
│ │ └─com.maple.system ------------ Module Directory
│ │ ├─bean ------------ Entity Classes
│ │ ├─mapper ------------ Mapper Interfaces
│ │ ├─service ------------ Service Interfaces
│ │ │ └─impl ------------ Service Implementations
│ │ └─vo
│ │ ├─model ------------ Public Model Objects
│ │ └─query ------------ Request Parameter Objects
│ └─resources
│ └─mapper ------------ Mapper XML Files
└─pom.xml ------------ Maven Configuration File
REST API Module Layout
maple-admin-rest ----------- Module Name
├─src
│ └─main
│ ├─java
│ │ └─com.maple.rest ----------- Module Directory
│ │ ├─aop ----------- AOP Configuration
│ │ ├─config ----------- Application Configuration
│ │ ├─controller ----------- Controllers
│ │ │ ├─common ----------- Common APIs
│ │ │ └─manage ----------- Management APIs
│ │ │ ├─system ----------- System Settings
│ │ │ ├─tool ----------- Utility Functions
│ │ │ └─usc ----------- User Management
│ │ ├─job ----------- Scheduled Tasks
│ │ └─Application.java ----------- Entry Point Class
│ └─resources ----------- Resource Folder
│ └─WEB-INF
│ └─resources
└─pom.xml ----------- Maven Configuration File
Frontend Module Layout
maple-web
├─public ---------- Public Assets
└─src
├─api ---------- API Endpoints
│ └─system ---------- System Management APIs
├─assets ---------- Static Resources
├─components ---------- Reusable Components
├─directive ---------- Custom Vue Directives
├─i18n ---------- Internationalization Files
├─layout ---------- Layout Templates
├─router ---------- Routing Configuration
├─stores ---------- State Management
├─theme ---------- Theme Settings
├─types ---------- Type Definitions
├─utils ---------- Utility JavaScript Functions
└─views ---------- Page Views