登录 注册
游戏与娱乐开发者工具
1,179
Stars
—
Forks
0
Watchers
—
Open Issues
待补全
许可证
Dart
语言
—
创建时间
最近更新

项目能做什么

基于 source_gen 的 Dio 客户端代码生成器,受 Chopper 和 Retrofit 启发。
来源:AI 基于仓库事实生成 · 内容以仓库实际 README 为准

使用说明 查看原始 README 原仓库文档

中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
# Retrofit For Dart

[![retrofit](https://img.shields.io/pub/v/retrofit?label=retrofit&style=flat-square)](https://pub.dartlang.org/packages/retrofit)
[![retrofit_generator](https://img.shields.io/pub/v/retrofit_generator?label=retrofit_generator&style=flat-square)](https://pub.dartlang.org/packages/retrofit_generator)
![Pub Likes](https://img.shields.io/pub/likes/retrofit)
[![Testing](https://github.com/trevorwang/retrofit.dart/actions/workflows/test.yml/badge.svg)](https://github.com/trevorwang/retrofit.dart/actions/workflows/test.yml)
[![Coverage Status](https://coveralls.io/repos/github/trevorwang/retrofit.dart/badge.svg?branch=master)](https://coveralls.io/github/trevorwang/retrofit.dart?branch=master)

retrofit.dart is a type conversion [dio](https://github.com/flutterchina/dio/) client generator using [source_gen](https://github.com/dart-lang/source_gen) and inspired by [Chopper](https://github.com/lejard-h/chopper) and [Retrofit](https://github.com/square/retrofit).

## Usage

### Generator

Add the generator to your dev dependencies

```yaml
dependencies:
  retrofit: ^4.9.0
  logger: ^2.6.0  # for logging purpose
  json_annotation: ^4.9.0

dev_dependencies:
  retrofit_generator: ^10.0.1
  build_runner: ^2.6.0
  json_serializable: ^6.10.0
```

### Define and Generate your API

```dart
import 'package:dio/dio.dart';
import 'package:json_annotation/json_annotation.dart';
import 'package:retrofit/retrofit.dart';

part 'example.g.dart';

@RestApi(baseUrl: 'https://5d42a6e2bc64f90014a56ca0.mockapi.io/api/v1/')
abstract class RestClient {
  factory RestClient(Dio dio, {String? baseUrl}) = _RestClient;

  @GET('/tasks')
  Future<List<Task>> getTasks();
}

@JsonSerializable()
class Task {
  const Task({this.id, this.name, this.avatar, this.createdAt});

  factory Task.fromJson(Map<String, dynamic> json) => _$TaskFromJson(json);

  final String? id;
  final String? name;
  final String? avatar;
  final String? createdAt;

  Map<String, dynamic> toJson() => _$TaskToJson(this);
}
```

### Configuration

You can customize the code generation behavior by creating a `build.yaml` file in your project root:

```yaml
targets:
  $default:
    builders:
      retrofit_generator:
        options:
          # Control whether to add '// dart format off/on' comments (default: true)
          format_output: true
          # Enable automatic response type casting (default: true)
          auto_cast_response: true
          # Generate empty request body for methods without parameters (default: false)
          empty_request_body: false
          # Enable useResult annotation for methods (default: false)
          use_result: false
          # Global parser for type conversion (default: json_serializable)
          # Supported values: dart_mappable, json_serializable, map_serializable, flutter_compute, dart_json_mapper
          parser: dart_mappable
```

#### parser

Set the default serialization parser across all `@RestApi()` classes without needing to annotate 
阅读完整原文

项目深度分析 AI 生成

Swagger/OpenAPI 转 Retrofit.dart 自动化生成 SaaS 工具

产品构想针对 Retrofit.dart 仅支持代码正向生成网络实现的痛点,开发基于 OpenAPI 规范一键反向生成 Retrofit 接口声明及数据模型的 Web/CLI 效率平台。
核心功能OpenAPI/Swagger/Postman JSON 导入与实时解析、自动生成规范的 Retrofit `@RestApi` 类与对应 JSON 序列化模型、在线配置解析器规则(支持 json_serializable/dart_mappable)、CI/CD 自动化更新集成。
目标用户频繁对接后端接口的 Flutter 开发者、跨职能研发团队、独立开发者。
难度/周期中等 · 3-5 周 · 成本:低(基础云主机/无服务器架构与前端部署)
收费模式免费版限制单项目与接口数,专业版/团队版采用订阅制(按月/年付费,提供 CI/CD Webhook 触发与无限项目支持)。
竞争风险市面上存在部分开源转换脚本(如 openapi-generator);需在生成的代码质量、Dart 类型安全度和 UI/交互体验上做出显著差异。
依据 已验证事实

API 资产变更自动化检测与 Dart 客户端同步服务(API-to-Client Sync)

产品构想构建与后端 API 网关/文档平台联动的自动化管线,当后端接口变更时,自动生成 PR 将最新的 Retrofit 代码合入 Flutter 客户端代码库。
核心功能后端 API 变更监控与 Diff 分析、自动生成符合 Retrofit.dart 规范的代码并触发 Git PR、API 破坏性变更告警、Mock 数据源同步更新。
目标用户中大型 Flutter 团队的 Tech Lead、DevOps 工程师、外包交付团队。
难度/周期较高 · 6-8 周 · 成本:中等(需维护任务调度引擎、代码沙箱生成环境与 GitHub/GitLab 深度集成)
收费模式B2B SaaS 订阅模式,按监控的 API 数量或席位数分级收费,提供私有化部署买断服务。
竞争风险企业网络安全与代码仓库访问权限审查严格;不同团队的 API 规范碎片化严重,兼容成本高。
依据 AI推测

Flutter 离线优先与网络弹性架构插件(Retrofit 增强扩展包)

产品构想基于 Retrofit.dart 与 Dio 构建付费/双许可的高级扩展组件,提供开箱即用的离线缓存同步、请求队列、断网自动重试与指标监控面板。
核心功能与 Retrofit 声明式注解无缝集成的 `@Cached`、`@OfflineQueue` 注解;SQLite/Isar 本地缓存自动映射;网络恢复时的事务重放机制;可视化网络性能监测面板。
目标用户海外弱网业务团队、企业级现场作业/仓储物流 Flutter 应用开发者。
难度/周期中等 · 4-6 周 · 成本:极低(主要是本地开发与文档维护)
收费模式双重许可或商用闭源 License(按应用包名买断或年度技术支持订阅)。
竞争风险高级开发者倾向于自行基于 Dio 拦截器编写逻辑;需要极高的稳定性和针对边缘异常情况的覆盖度来证明付费价值。
依据 尚需验证的假设
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心

竞品与相似项目 GitHub Search 真实检索

项目中文简介Stars语言
charafau/retrofit.dart 中文介绍暂未生成
VERY simple retrofit client in dart (sample for presentation
6 Dart
ebwood/retrofit_wrapper_tools 中文介绍暂未生成
dart retrofit library wrapper to handle error
4 Dart
luiscib3r/retrofit_cli 中文介绍暂未生成
Dart Retrofit API Generator
4 Dart
以上为通过 GitHub 官方 Search API 检索的相似项目,功能差异与优劣势需进一步人工确认,配置 AI 后可生成对比分析。

项目优势与风险

技术成熟度创建时间待补全,最近推送 ,发布过 100 个 Release
社区活跃Star 1,179 / Fork 0 / Issue 0(数据支持,可自行核实)
许可证未检测到(需人工确认)
主要风险上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价

安装与使用

此项目未提供 Docker 镜像,安装步骤以原仓库 README 为准(涉及依赖安装与环境配置,对新手门槛较高)。