本项目目标是参考 go-admin 与 go-admin-ui 的功能边界,使用 Rust + React 重新设计并实现一个后台管理平台。项目不是逐行迁移 Go/Vue 代码,而是先阅读参考源码,产出 Source Summary,再通过 SDD 规格化与 DDD 领域建模落地到新的技术栈。
- 覆盖登录认证、JWT、用户、角色、菜单、部门、岗位、字典、参数配置、RBAC、Casbin、数据权限、操作日志、登录日志、代码生成、表单构建、任务调度、服务监控、多租户等后台管理能力。
- 以 Rust 后端和 React 前端实现清晰的领域边界、API 契约和可测试架构。
- 建立约束机制,防止实现偏离参考项目、规格文档和架构决策。
go-admin / go-admin-ui 提供了成熟后台管理系统的功能边界、菜单结构、权限模型、接口行为和前端交互。参考它们可以降低需求遗漏风险,但本项目只继承能力与行为基线,不照搬代码结构。
Rust + Axum 适合构建高可靠、强类型、异步的后端服务;React + TypeScript 适合构建组件化、类型约束清晰的管理端应用。两者结合可以通过 OpenAPI、契约测试和类型生成减少前后端漂移。
- 后端:Rust、Axum、Tokio、SQLx、PostgreSQL、Redis、JWT、casbin-rs、validator、axum-valid、utoipa、tracing、thiserror、clap。
- 前端:React、TypeScript、Vite、TailwindCSS、shadcn/ui、TanStack Query、TanStack Table、React Router、React Hook Form、Zod。
- 工程:Docker Compose、OpenAPI、契约测试、Drift Check、CI。
项目采用 SDD 与 DDD:
- SDD:先写规格、API 契约、校验、错误、测试计划,再实现。
- DDD:按限界上下文建模,区分 Entity、Value Object、Aggregate、Repository、Application Service、Domain Service 和错误模型。
backend/
├── Cargo.toml
├── migrations/
└── src/
├── main.rs
├── lib.rs
├── app.rs
├── config.rs
├── error.rs
├── response.rs
├── state.rs
├── routes/
├── handlers/
├── middleware/
├── dto/
├── services/
├── domain/
├── repositories/
└── infra/
frontend/
├── package.json
├── vite.config.ts
└── src/
docs/
├── adr/
├── rules/
├── source-map/
├── specs/
└── tasks/
仓库根目录只存放项目级内容,例如 README.md、AGENTS.md、docs/、references/、CI 配置和项目脚本;前端与后端业务源码分别放入 frontend/ 与 backend/。
每个功能任务必须遵守:
Source Read
-> Source Summary
-> SDD Spec
-> DDD Mapping
-> API Contract
-> Implementation Plan
-> Implementation
-> Test Plan
-> Drift Check
-> Task Status Update
约束来源包括 AGENTS.md、docs/rules/*.md、docs/specs/*.md、docs/adr/*.md、docs/tasks/*.md、OpenAPI 契约、测试、CI 与 PR Checklist。任何实现前必须先通过任务准入门禁与实现前门禁。
- 总体路线:
docs/16-roadmap.md - 任务阶段:
docs/tasks/README.md - 约束机制:
docs/19-constraint-mechanism.md - 单项任务模板:
docs/tasks/task-template.md
./scripts/ci-check.sh该脚本会执行后端格式化、编译、测试、Clippy,前端 typecheck、测试、构建,以及静态 Contract Check / Drift Check。
docker compose up --buildCompose 会启动 PostgreSQL、Redis、后端 API 和前端 Nginx。后端容器启动时会先执行 admin-api migrate up,再启动 admin-api serve。前端默认监听 http://localhost:8080,后端 API 默认监听 http://localhost:18080。
当前已完成 Phase 02 至 Phase 09 的主要后台管理能力,包括认证、用户、RBAC、组织、配置、审计、代码生成器、表单构建器、任务调度、服务监控和多租户隔离。Phase 10 已补齐 Docker Compose、CI、Contract Check 和 Drift Check 的第一版工程入口。