Skip to content

后端文档介绍

这套文档面向 art-design-pro-server 的本地运行、环境配置、接口联调、运维排查和扩展开发。它的目标是帮助你理解环境初始化、数据库迁移、默认数据准备、认证权限联调、业务模块扩展和生产部署,而不只是验证接口服务能够启动。

首次接手项目时,建议先建立以下认知:

  • 它已经包含账号、权限、配置、文件、日志、监控、调度等后台服务基础能力。
  • 它与商业版前端存在明确的登录、刷新令牌、菜单、权限和站点配置联动关系。
  • 它适合作为业务项目的服务端底座,并支持后续模块化扩展和长期维护。

建议阅读顺序

第一次接手项目

  1. 快速开始
  2. 环境变量
  3. 项目结构
  4. 认证与接口安全

准备开始扩展业务

  1. 权限体系
  2. 业务模块地图
  3. 新模块扩展方式

准备部署上线

  1. 部署运维
  2. 常见问题

后端定位

art-design-pro-server 是一套具备项目化属性的 Node 服务端工程,当前已经覆盖:

  • 认证、会话、JWT、Refresh Token Cookie
  • 菜单权限、API 权限、数据权限
  • 用户、角色、部门、岗位、菜单、字典、参数、站点配置
  • 内容管理、通知中心、反馈中心
  • 文件中心与对象存储
  • 监控、在线用户、安全审计、健康检查
  • 定时任务与执行日志
  • 商城、工作流、AI 助手等模块

技术栈总览

分类实际使用
服务框架NestJS 11
语言与运行时TypeScript、Node.js
数据访问Prisma 7
数据库PostgreSQL 16
认证方式JWT + Refresh Token Cookie
文档能力Swagger
任务调度@nestjs/schedule
校验能力class-validator、class-transformer、Joi
测试Jest、Supertest
工程工具ESLint、Prettier、Husky、Lint-staged、Commitizen

这套技术栈的重点不是“追新”,而是围绕业务项目里的几个高频目标来选型:

  • 服务结构清晰,适合模块化扩展
  • 数据模型和类型一致,减少联调歧义
  • 文档、测试和脚本链路完整,便于使用和维护
  • 对认证、安全、文件、调度这类企业级需求有较好的承接能力

能力分层

1. 接口层

Controller、DTO、Swagger 标注、守卫、装饰器。

2. 业务层

Service、模块拆分、权限校验、业务流程编排。

3. 数据层

Prisma、迁移、初始化数据、数据库模型。

4. 运维层

日志、监控、健康检查、定时任务、部署配置。

文档重点回答的问题

  • 新环境如何把服务完整跑起来
  • 当前项目的关键环境变量是什么
  • 登录和刷新令牌如何协同工作
  • 权限体系分成哪几层
  • 文件、任务、监控等能力已经做到什么程度
  • 如果以后继续加业务模块,应该沿着什么方式扩展

代码规范与提交

商业版后端已经内置了工程规范链路,建议在开始开发前先阅读开源文档中的 规范

当前后端项目实际可用的相关脚本包括:

bash
pnpm lint
pnpm lint:fix
pnpm lint:prettier
pnpm lint:lint-staged
pnpm test
pnpm test:e2e
pnpm commit

日常推荐流程:

  1. 开发完成后先执行 pnpm lint
  2. 需要自动修复时执行 pnpm lint:fix
  3. 提交前确认测试至少覆盖本次改动主链路
  4. 使用 pnpm commit 生成规范化提交信息

团队协作时,建议把“先 lint、再 test、最后 commit”作为固定流程,避免只在问题出现后补做检查。

阅读后你可以掌握

  • 独立把后端在本地跑起来
  • 知道前端通过哪些接口和配置接入后端
  • 知道权限与菜单链路如何协同
  • 知道如何排查登录、文件、部署相关问题
  • 知道如何在现有基础上继续加业务模块

根据 MIT 许可证发布