用途:为 Dart/Flutter 项目提供工具链与 CI 规范,覆盖静态分析、lint、格式化、复杂度检查与代码生成。
主要能力与要求:
- Linter:使用 analysis_options.yaml,强制 always_use_package_imports 与 require_trailing_commas。
- 格式化:使用 dart format . --line-length 80,每次提交都运行。
- DCM:使用 dart_code_metrics 做复杂度检查,最大圈复杂度 15。
- 代码生成:build_runner 必须带 --delete-conflicting-outputs。
- CI:所有 PR 必须通过 analyze、format、test 步骤。
- 导入分组:dart:、package:、相对导入。
- 文档:公共 API 用 ///,用 [Class] 链接符号。
常用命令: flutter analyze --fatal-infos --fatal-warnings dart run dart_code_metrics:metrics analyze lib
提交前:保持 lefthook.yml 与 analyze/format/metrics 命令同步。
反模式:build_runner 不带 --delete-conflicting-outputs 会产生过期生成文件冲突;flutter build 前未先 flutter analyze;无说明的 ignore 注释;pre-commit 跳过 dart format。
限制:资料未提供具体版本、安装步骤、价格或平台支持信息。