Skip to content

insistence/RuoYi-Vue-FastAPI

Repository files navigation

logo

RuoYi-Vue-FastAPI

基于RuoYi-Vue+FastAPI前后端分离的快速开发框架

Gitee Github project version Ruff LICENSE node version python version mysql version redis version

平台简介

RuoYi-Vue-FastAPI是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。

内置功能

  1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
  2. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
  3. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
  4. 部门管理:配置系统组织机构(公司、部门、小组)。
  5. 岗位管理:配置系统用户所属担任职务。
  6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
  7. 参数管理:对系统动态配置常用参数。
  8. 通知公告:系统通知公告信息发布维护。
  9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
  10. 登录日志:系统登录日志记录查询包含登录异常。
  11. 在线用户:当前系统中活跃用户状态监控。
  12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
  13. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
  14. 缓存监控:对系统的缓存信息查询,命令统计等。
  15. 传输加密:支持前后端请求加密、响应解密、公钥轮换、运行策略下发与监控统计。
  16. 在线构建器:拖动表单元素生成相应的HTML代码。
  17. 系统接口:根据业务代码自动生成相关的api接口文档。
  18. 代码生成:配置数据库表信息一键生成前后端代码(python、sql、vue、js),支持下载。
  19. AI管理:提供AI模型管理和AI对话功能。
  20. 文件管理:统一管理公开文件和受保护附件,支持访问控制、业务引用保护、操作审计、回收站、保留策略及存储对账。
  21. 插件系统:支持插件发现、安装、启停、升级、卸载与清理,提供依赖与配置管理、迁移与种子、定时任务、菜单权限、批量预演、健康诊断、操作审计及前后端插件脚手架。

演示图

login dashboard
user role
menu dept
dict
config notice
operLog loginLog
online job
server cache
cacheList form
api gen
aiModel aiChat
file plugin
profile
applogin appWorkbench appProfile

在线体验

项目开发及发布相关

传输层加解密配置说明

后端密钥配置与轮换说明:ruoyi-fastapi-backend/docs/transport_crypto_config.md

开发

# 克隆项目
git clone https://gitee.com/insistence2022/RuoYi-Vue-FastAPI.git

# 进入项目根目录
cd RuoYi-Vue-FastAPI

前端

# 进入前端目录
cd ruoyi-fastapi-frontend

# 安装依赖
npm install

# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npmmirror.com

# 启动服务
npm run dev

移动端

# 进入移动端目录
cd ruoyi-fastapi-app

# 安装依赖
npm install -g yarn
yarn

# 启动 H5
yarn dev:h5

# 启动微信小程序
yarn dev:mp-weixin

移动端详细文档请参考:ruoyi-fastapi-app/README.md

后端

# 进入后端目录
cd ruoyi-fastapi-backend

# 如果使用的是MySQL数据库,请执行以下命令安装项目依赖环境
pip3 install -r requirements.txt
# 如果使用的是PostgreSQL数据库,请执行以下命令安装项目依赖环境
pip3 install -r requirements-pg.txt

# 配置环境
在.env.dev文件中配置开发环境的数据库和redis

# 运行sql文件
1.新建数据库ruoyi-fastapi(默认,可修改)
2.如果使用的是MySQL数据库,使用命令或数据库连接工具运行sql文件夹下的ruoyi-fastapi.sql;如果使用的是PostgreSQL数据库,使用命令或数据库连接工具运行sql文件夹下的ruoyi-fastapi-pg.sql

# 运行后端
ruoyi app run --env=dev

后端 CLI 使用说明请参考:ruoyi-fastapi-backend/docs/cli_usage.md

访问

# 默认账号密码
账号:admin
密码:admin123

# 浏览器访问
地址:http://localhost:80

发布

前端

# 构建测试环境
npm run build:stage

# 构建生产环境
npm run build:prod

后端

# 配置环境
在.env.prod文件中配置生产环境的数据库和redis

# 运行后端
ruoyi app run --env=prod

Docker Compose部署方式

⚠️ 警告: 默认未做数据持久化配置,请注意数据备份或自行配置持久化

MySQL版本

docker compose -f docker-compose.my.yml up -d --build

PostgreSQL版本

docker compose -f docker-compose.pg.yml up -d --build

交流与赞助

如果有对本项目及FastAPI感兴趣的朋友,欢迎加入知识星球一起交流学习,让我们一起变得更强。如果你觉得这个项目帮助到了你,你可以请作者喝杯咖啡表示鼓励☕。扫描下面微信二维码添加微信备注VF-Admin即可进群。

zsxq zanzhu
wxcode

About

基于Vue2+Element UI+FastAPI开发的一个通用中后台管理框架(若依的FastAPI版本),支持代码生成。A general middle and backend management framework developed with Vue2 + Element UI + FastAPI (FastAPI Edition of RuoYi), supporting code generation.

Topics

Resources

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages