Skip to content

igxm/rust-react-admin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rust React Admin

本项目目标是参考 go-admingo-admin-ui 的功能边界,使用 Rust + React 重新设计并实现一个后台管理平台。项目不是逐行迁移 Go/Vue 代码,而是先阅读参考源码,产出 Source Summary,再通过 SDD 规格化与 DDD 领域建模落地到新的技术栈。

项目目标

  • 覆盖登录认证、JWT、用户、角色、菜单、部门、岗位、字典、参数配置、RBAC、Casbin、数据权限、操作日志、登录日志、代码生成、表单构建、任务调度、服务监控、多租户等后台管理能力。
  • 以 Rust 后端和 React 前端实现清晰的领域边界、API 契约和可测试架构。
  • 建立约束机制,防止实现偏离参考项目、规格文档和架构决策。

为什么参考 go-admin / go-admin-ui

go-admin / go-admin-ui 提供了成熟后台管理系统的功能边界、菜单结构、权限模型、接口行为和前端交互。参考它们可以降低需求遗漏风险,但本项目只继承能力与行为基线,不照搬代码结构。

为什么使用 Rust + React

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.mdAGENTS.mddocs/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.mddocs/rules/*.mddocs/specs/*.mddocs/adr/*.mddocs/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

docker compose up --build

Compose 会启动 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 的第一版工程入口。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages