Skip to content

开发指南

面向希望快速上手 RuoYi Office 的开发者,覆盖环境要求、启动命令与内容贡献方式。

环境要求

  • Node.js ≥ 20.12.0(推荐与前端工程保持一致)
  • 包管理:pnpm ≥ 10.22.0(前端工程强制使用 pnpm)
  • 推荐使用现代浏览器与 VS Code / Cursor 等具备 TypeScript 支持的 IDE

项目结构(文档站)

docs/
  .vitepress/        # 站点配置
  index.md           # 首页
  product/           # 产品功能文档目录
    index.md         # 产品功能总览
    system.md        # 系统管理
    bpm.md           # 流程中心
    ...
  guide/             # 开发指南目录
    index.md         # 开发指南
    markdown-examples.md
    api-examples.md
  demo/              # 在线体验目录
    index.md
  donate/            # 捐赠目录
    index.md
  hosting/           # 托管平台目录
    index.md

常用命令(VitePress)

  • 本地预览:pnpm docs:dev
  • 构建产物:pnpm docs:build
  • 本地预览已构建产物:pnpm docs:preview

如未安装 pnpm,可先执行 npm install -g pnpm

前后端工程参考

  • 前端(Vben 版):ruoyi-office-vben/apps/web-antd,使用 Vue 3 + Vite + Ant Design Vue + Vben Admin + TypeScript。
  • 后端:ruoyi-office,基于 Spring Boot 3.5.4 + Spring Cloud Alibaba,支持多租户、工作流、支付、报表等。
  • SQL 初始化:ruoyi-office/sql/mysql 下提供组件与业务初始化脚本(含工作台组件)。

代码与规范

  • TypeScript 严格模式、ESLint + Prettier 校验;后端遵循阿里巴巴 Java 开发手册。
  • 统一错误码与异常处理、操作/登录日志、数据权限、多租户封装。
  • 前端组件采用 <script setup>,Props 使用 defineProps/withDefaults,样式优先使用 Tailwind 辅以 Scoped 样式。

技术说明

前端技术栈

技术版本说明
Vue3.5.x渐进式 JavaScript 框架
Vite6.3.x下一代前端构建工具
TypeScript5.8.xJavaScript 的超集,增加类型系统
Ant Design Vue4.2.x企业级 UI 组件库
Element Plus2.10.xVue 3 组件库(部分使用)
Vben Admin-企业级中后台模板
Pinia3.0.xVue 状态管理工具
Vue Router4.5.xVue 官方路由
Tailwind CSS3.4.x原子化 CSS 框架
VueUse13.xVue 组合式 API 工具集
VeeValidate4.x表单验证
Zod3.25.xTypeScript 优先的模式验证

后端技术栈

技术版本说明
Spring Boot3.5.xJava 应用开发框架
Spring Cloud2025.0.x微服务架构解决方案
Spring Cloud Alibaba2023.0.x阿里微服务组件
Spring Security6.x安全认证与授权框架
MyBatis Plus3.5.xMyBatis 增强工具
Druid1.2.x数据库连接池
Redis-分布式缓存
Redisson3.50.xRedis 客户端
RocketMQ2.3.x消息队列
Flowable7.0.x工作流引擎
SkyWalking9.5.x分布式链路追踪
MapStruct1.6.x对象映射工具
Hutool5.8.xJava 工具类库

数据库支持: MySQL、Oracle、PostgreSQL、达梦、人大金仓、SQL Server 等

移动端技术栈

基于 uni-app 跨平台开发框架,一套代码多端运行:

技术说明
uni-app跨平台应用开发框架
Vue 3前端框架
TypeScript类型安全
uView UIuni-app 组件库

支持平台: 微信小程序、H5、App(iOS/Android)

移动端开发规范详见:uni-app 开发规范

工作流技术

基于 Flowable 7 的企业级工作流解决方案:

特性说明
BPMN 2.0标准流程建模规范
可视化设计器支持 BPMN 设计器和简易设计器两种模式
动态表单流程表单动态设计与绑定
多种审批模式会签、或签、加签、委派、退回、抄送
流程监控流程实例监控、任务超时提醒
流程报表流程效率分析、审批统计

单元测试

框架说明
JUnit 5Java 单元测试框架
MockitoMock 框架
Spring Boot TestSpring 测试支持
H2 Database内存数据库(测试用)
Vitest前端单元测试框架

单元测试规范详见:单元测试

工程化特性

  • 代码规范: 遵循阿里巴巴 Java 开发手册,ESLint + Prettier + TypeScript 严格校验
  • 代码生成: 根据数据库表自动生成前后端 CRUD 代码
  • 自动化构建: Maven/Gradle + pnpm 构建脚本
  • 多环境支持: 开发、测试、生产环境配置隔离
  • 容器化部署: Docker + Docker Compose 一键部署

更多技术细节详见:技术选型

贡献与协作

  1. Fork 或新建分支,保持与主干同步。
  2. 提交前确保通过 lint 与构建(前端:pnpm lint && pnpm build;后端:mvn -T 1C clean verify,如适用)。
  3. PR/提交信息简明描述改动:范围 + 目的(例:feat: add task list maxRecordNum config)。
  4. 文档改动:新增页面请补充到侧边栏/导航;保持中文描述,图示与代码块简洁可复现。

常见问题

  • 构建依赖未安装:删除 node_modules 后重新执行 pnpm install
  • 端口占用:VitePress 默认 5173,可通过 pnpm docs:dev -- --port 5174 调整。
  • 主题样式不一致:清理 .vitepress/cache 后重启,或在浏览器禁用缓存强制刷新。