rustzen-admin:Rust + React 管理后台模板

rustzen-admin:Rust + React 管理后台模板


开发管理后台时,经常需要重复实现相同的功能模式:用户认证、权限管理、CRUD 操作等基础功能。rustzen-admin 是一个开源模板,使用 Rust 作为后端、React 作为前端,提供这些基础功能的完整实现。

当前实现功能

这是一个正在开发中的模板项目,以下是目前已经实现的功能:

✅ 后端 (Rust + Axum + PostgreSQL)

✅ 前端 (React 19 + TypeScript + Ant Design)

🔄 开发中功能

技术架构

后端结构

backend/src/features/
├── auth/           # 认证和授权
├── system/
│   ├── user/      # 用户管理
│   ├── role/      # 角色管理
│   ├── menu/      # 菜单管理
│   └── log/       # 操作日志

每个功能模块都遵循一致的分层模式:

前端结构

frontend/src/
├── pages/          # 页面组件
├── services/       # API 通信
├── types/          # TypeScript 类型定义
└── layouts/        # 布局组件

技术选型理由

为什么选择 Rust 作为后端?

为什么选择 React + TypeScript?

快速开始

环境要求

# 必需工具
rust --version     # >= 1.70
node --version     # >= 20
docker --version   # >= 20.10

安装步骤

git clone https://github.com/idaibin/rustzen-admin.git
cd rustzen-admin

# 配置环境变量
cp backend/.env.example backend/.env

# 安装 just 命令工具
cargo install just

# 启动开发环境
just dev

启动后包含:

默认登录账号:admin / admin123

开发体验

统一命令管理

just dev       # 启动开发环境
just build     # 构建生产版本
just test      # 运行测试
just clean     # 清理构建缓存

API 测试

项目包含 REST Client 文件,可直接在 VSCode 中测试 API:

### 登录
POST http://localhost:8000/api/auth/login
Content-Type: application/json

{
  "username": "admin",
  "password": "admin123"
}

性能表现

基础负载测试显示在典型管理后台使用场景下有合理的性能表现:

指标结果
冷启动时间~1 秒
内存占用~30-50MB
并发处理可良好处理数百并发

注:这是开发环境下的指标,生产环境性能取决于部署配置。

适用场景

适合的项目类型:

建议考虑其他方案的情况:

参与贡献

欢迎参与项目贡献!特别需要帮助的领域:

贡献流程

  1. Fork 仓库
  2. 创建功能分支
  3. 进行开发修改
  4. 如适用,添加测试
  5. 提交 Pull Request

当前局限性

坦诚说明这个模板目前还没有包含的功能:

发展规划

短期目标

长期规划

学习资源

如果你对 Rust 或这个技术栈还不熟悉,推荐以下学习资源:

Rust Web 开发:

React TypeScript:

相关链接


这个模板旨在为管理后台开发提供可靠的基础,同时展示 Rust 在 Web 后端开发中的有效应用。欢迎你的反馈和贡献!

你在 Rust Web 开发方面有什么经验?遇到过哪些挑战或收获?

标签:#Rust #React #Web 开发 #开源项目 #管理后台