flutter-dart-code-review

Solid

Library-agnostic Flutter/Dart code review checklist covering widget best practices, state management patterns (BLoC, Riverpod, Provider, GetX, MobX, Signals), Dart idioms, performance, accessibility, security, and clean architecture.

Code & Development 196,640 stars 30253 forks Updated 2 days ago MIT

Install

View on GitHub

Quality Score: 96/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Flutter/Dart Code Review Best Practices Comprehensive, library-agnostic checklist for reviewing Flutter/Dart applications. These principles apply regardless of which state management solution, routing library, or DI framework is used. --- ## 1. General Project Health - [ ] Project follows consistent folder structure (feature-first or layer-first) - [ ] Proper separation of concerns: UI, business logic, data layers - [ ] No business logic in widgets; widgets are purely presentational - [ ] `pubspec.yaml` is clean — no unused dependencies, versions pinned appropriately - [ ] `analysis_options.yaml` includes a strict lint set with strict analyzer settings enabled - [ ] No `print()` statements in production code — use `dart:developer` `log()` or a logging package - [ ] Generated files (`.g.dart`, `.freezed.dart`, `.gr.dart`) are up-to-date or in `.gitignore` - [ ] Platform-specific code isolated behind abstractions --- ## 2. Dart Language Pitfalls - [ ] **Implicit dynamic**: Missing type annotations leading to `dynamic` — enable `strict-casts`, `strict-inference`, `strict-raw-types` - [ ] **Null safety misuse**: Excessive `!` (bang operator) instead of proper null checks or Dart 3 pattern matching (`if (value case var v?)`) - [ ] **Type promotion failures**: Using `this.field` where local variable promotion would work - [ ] **Catching too broadly**: `catch (e)` without `on` clause; always specify exception types - [ ] **Catching `Error`**: `Error` subtypes indicate bugs ...

Details

Author
affaan-m
Repository
affaan-m/everything-claude-code
Created
4 months ago
Last Updated
2 days ago
Language
JavaScript
License
MIT

Integrates with

Related Skills