Vue Pure Admin + NestJS 全栈快速开发平台
Vue Pure Admin + NestJS 是一个 企业级前后端分离快速开发平台,前端基于 Vue 3 + Vite + Element Plus,后端基于 NestJS 11 + TypeORM + MySQL + Redis。
提供完整的 RBAC 权限控制、字典管理、操作日志、国际化、限流防护、结构化日志 等功能,帮助开发者快速搭建企业级中后台应用。
Vue 3 + Vite 6 + NestJS 11 + TypeScript 5.7,全链路类型安全
用户 → 角色 → 菜单 三级模型,支持按钮级权限指令
accessToken (7d) + refreshToken,自动续期,Passport 策略
Helmet 安全头、CORS 白名单、全局限流 (Throttler, 60次/60s)
Pino 高性能日志,统一 traceId,异常过滤,开发环境美化输出
ioredis 集成,支持缓存、黑名单、分布式锁等场景
内置中/英文多语言支持,轻松切换
动态字典类型 + 字典数据,支持缓存刷新
基于装饰器的 @OperLog 注解,自动记录增删改操作
OpenAPI 3.0 在线 API 文档,Bearer Auth,即开即用
MySQL、Redis 已容器化,支持 Docker Compose 一键部署
10 个独立业务模块,清晰的分层结构,易扩展易维护
• Node.js 22.22 LTS
• pnpm 10.x 或 npm 10.x
• Docker Desktop(运行 MySQL + Redis)
# 一行命令启动 MySQL + Redis(无需分别 run)
docker compose up -d
# TypeORM 自动建表(synchronize)
pnpm run start:dev
# 写入种子数据(角色、菜单、管理员账号)
node scripts/seed.js
pnpm install
PORT=3001
NODE_ENV=development
DB_TYPE=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_USER=root
DB_PASSWORD=root
DB_NAME=vue_pure_admin
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
JWT_SECRET=vue-pure-admin-secret-key-2026
pnpm start:dev
| 页面 | 地址 | 说明 |
|---|---|---|
| 项目首页 | http://localhost:3001/ | Handlebars 渲染 |
| API 文档 | http://localhost:3001/api-docs | Swagger UI |
| 前端应用 | http://localhost:8848 | Vue 3 SPA |
| 方法 | 路径 | 模块 | 说明 |
|---|---|---|---|
| POST | /api/auth/login | 认证 | 用户登录,返回双 JWT |
| POST | /api/auth/refresh | 认证 | 刷新 accessToken |
| GETPOST | /api/user/* | 用户 | 列表/详情/新增/更新/删除 |
| GETPOST | /api/role/* | 角色 | 列表/新增/更新/删除 + 分配菜单 |
| GETPOST | /api/menu/* | 菜单 | 菜单树 + 按钮权限 |
| GETPOST | /api/dept/* | 部门 | 部门树管理 |
| GETPOST | /api/dict/* | 字典 | 字典类型 + 数据管理 |
| GETPOST | /api/log/* | 日志 | 操作日志查询 / 清空 |
| GETPOST | /api/mine/* | 我的 | 个人信息修改 / 密码重置 |