← Back to list

project-overview
by lwj1994
⭐ 0🍴 0📅 Jan 23, 2026
SKILL.md
name: Project Overview description: Dataforge 项目结构、核心模块及测试流程概览
Dataforge 项目概览
Dataforge 是一个功能类似于 freezed + json_serializable 的数据类生成库。
核心模块结构
-
dataforge_base 包含核心的代码生成逻辑 (Model, Parser, Writer)。这是
cli和generator的共同基础。 -
cli 命令行工具,用于独立生成代码。
- 入口:
bin/dataforge.dart - 依赖
dataforge_base
- 入口:
-
generator 基于
build_runner的生成器实现。- 用于
flutter pub run build_runner build - 依赖
dataforge_base
- 用于
架构说明:
generator和cli均依赖并共享dataforge_base的逻辑,确保生成行为一致。
开发与测试流程
Generator 测试
主要基于 build_test 和 source_gen 的 @ShouldGenerate 注解进行测试。
- 位置:
generator/test/ - 方法: 验证输入源代码 (source) 是否生成了预期的输出代码 (generated)。
CLI 测试
采用集成测试 (Integration Testing) 流程,模拟真实使用场景:
- 编写 Case: 在
cli/test/models/等目录编写包含@DataForge注解的 Dart 文件。 - 生成代码: 通过
bin/dataforge.dart运行生成命令,处理这些 Case 文件。 - 验证逻辑: 运行
test目录下的测试脚本,直接引用并测试生成的代码逻辑(如toJson,fromJson等)。
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon