用途:为 Tauri 应用提供 API 与数据结构设计指导,覆盖命令接口、DTO、契约文档、请求响应模式、错误处理与版本演进。触发场景包括设计 API、创建 DTO、定义数据结构、编写 API 文档、规划请求响应格式,以及重构或版本化现有接口。
主要能力:强调类型安全优先,使用 serde、specta 派生显式类型结构,避免 HashMap 或原始 JSON 等无类型结构;统一 Rust snake_case 与 TypeScript camelCase 命名映射,可用 #[serde(alias)] 保持兼容;在 API 边界做校验,如名称非空、长度限制、原料比例合计为 100%;提供标准 ApiResponse<T> 包装(success、data、message、code)与分页响应 PaginatedResponse<T>、PaginationParams;用 thiserror 定义结构化错误枚举并映射为统一错误码;支持内联文档与 TypeScript 使用文档;通过 DTO 版本化(如 V1、V2 及 #[serde(flatten)])实现 API 演进。
使用方式:在 Tauri 命令上标注 #[tauri::command] 与 #[specta::specta],DTO 使用 #[derive(Serialize, Deserialize, Type, Clone)] 与 #[specta(inline)];命令内先校验输入,再经 with_service 调用服务层,返回 ApiResponse;前端使用生成的绑定类型调用命令并检查 success。
适用场景:新建 Tauri 命令、设计请求响应 DTO、规划 API 结构、编写契约文档、校验 API 设计、处理 API 错误与版本化。
限制:资料主要面向 Tauri 与 Rust/TypeScript 技术栈,未提供其他框架或语言的适配说明;未提及安装命令、收费、价格或平台支持等具体信息。