Focused Agent Skills for complete Flutter and Dart app delivery.
72
90%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
Use this reference when the package's reusable Dart or Flutter contract is the main concern.
Identify intended consumers and supported SDKs before choosing syntax or dependencies. Keep the public surface deliberate: export only supported APIs, avoid leaking implementation types through signatures, and document lifecycle, concurrency, error, and ownership behavior that callers must understand.
Prefer additive compatible evolution. Before removing, renaming, narrowing, or changing behavior, inspect current package versioning, changelog policy, repository consumers, and deprecation history. A deprecation needs a usable replacement and enough time for consumers to migrate; semantic versioning labels impact but does not make a breaking change safe.
Do not expose a package-specific dependency type merely for implementation convenience when a stable platform-neutral contract would suffice. Conversely, do not add abstraction that has no consumer or compatibility value.
lib/; keep implementation details under lib/src/ and unexported unless intentionally public.example/ when users need to see integration, configuration, lifecycle, or platform behavior.Read SDK and dependency constraints before recommending current language features or package versions. Prefer the smallest compatible dependency surface, avoid unnecessary direct dependencies, and do not use overrides to conceal an unresolved public constraint.
For Flutter packages, do not impose Provider, Riverpod, Bloc, Dio, or another product-level choice on consumers unless that dependency is intrinsic to the package's contract.
Test through public entrypoints wherever possible. Cover documented success, failures, cancellation, disposal, concurrency, and unsupported behavior. Use an example app or integration fixture for behavior that unit or widget tests cannot prove.
When changing public behavior, add a regression test that would fail for the old defect and consider a small representative consumer compile test. Avoid assertions that merely mirror private implementation details.
.tessl-plugin
skills
dart-concurrency
dart-language
flutter-accessibility
flutter-ai-integration
flutter-animation
flutter-app-workflow
flutter-architecture
flutter-authentication
flutter-background-execution
flutter-build-release
flutter-ci-cd
flutter-code-review
flutter-dependency-upgrades
flutter-device-testing
flutter-figma-workflow
flutter-in-app-purchases
flutter-localization
references
flutter-networking
references
flutter-notifications
flutter-observability
flutter-openapi-client
flutter-package-development
flutter-performance
flutter-persistence
references
flutter-platform-integration
flutter-product-analytics
flutter-responsive-layout
references
flutter-runtime-debugging
flutter-security
flutter-state-management
flutter-testing
flutter-ui-design
flutter-ui-patterns
flutter-visual-effects