Skip to content

基于 FastAPI 框架构建的现代化企业级后台管理系统后端 API,采用分层架构设计,具备高性能、强安全性、易维护、易扩展等特点。

Notifications You must be signed in to change notification settings

lijianqiao/fastapi-admin-v3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FastAPI Admin v3

基于 FastAPI + SQLAlchemy 2.0 的企业级后台管理系统 API。

✨ 核心特性

  • RBAC 权限控制 - 用户、角色、菜单三级权限管理
  • 数据权限 - 支持全部/自定义/本部门/本部门及下级/仅本人 5 种范围
  • JWT 认证 - Access Token + Refresh Token + 黑名单机制
  • 审计日志 - 异步队列批量写入,自动记录操作
  • 系统监控 - CPU/内存/磁盘/网络/进程实时监控
  • 定时任务 - APScheduler 集成,支持 Cron 表达式
  • 文件管理 - 上传/下载 + MD5 去重
  • 数据导入导出 - Excel/CSV 支持
  • 公告通知 - 支持 WebSocket 实时推送
  • 在线用户 - 实时在线用户管理
  • 验证码 - 图形验证码支持

🛠 技术栈

类别 技术
Web 框架 FastAPI 0.122+
ORM SQLAlchemy 2.0 (asyncpg)
数据库 PostgreSQL
缓存 Memory / Redis
认证 JWT (PyJWT) + Argon2
任务调度 APScheduler
数据处理 Polars
Python 3.13+

🚀 快速开始

1. 环境准备

# 克隆项目
git clone https://github.com/lijianqiao/fastapi-admin-v3.git
cd fastapi-admin-v3/backend

# 安装依赖 (推荐使用 uv)
uv sync

2. 配置数据库

创建 .env 文件:

DATABASE_URL=postgresql+asyncpg://user:password@localhost:5432/fastapi_admin
SECRET_KEY=your-secret-key

3. 初始化数据库

# 执行数据库迁移
uv run alembic upgrade head

# 初始化基础数据
uv run init_db.py

4. 启动服务

uv run start.py

访问 http://localhost:8000/docs 查看 API 文档。

📁 项目结构

app/
├── api/v1/       # API 接口层
├── services/     # 业务逻辑层
├── models/       # 数据模型层
├── schemas/      # 数据验证层
├── core/         # 核心模块 (认证、缓存、异常等)
├── tasks/        # 定时任务
└── utils/        # 工具模块

🖥 配套前端

前端项目地址:fastapi-admin-v3-frontend

📄 许可证

MIT License

About

基于 FastAPI 框架构建的现代化企业级后台管理系统后端 API,采用分层架构设计,具备高性能、强安全性、易维护、易扩展等特点。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages