flutter-package-developmentlisted
Install: claude install-skill thiennc-tesoglobal/flutter-skills
# Flutter Package Development
Treat reusable packages as versioned contracts consumed by independent projects. Preserve SDK bounds, package architecture, supported platforms, and release conventions unless migration is requested.
## Preflight
Inspect `pubspec.yaml`, public exports, examples, tests, platform folders, CI, changelogs, and consumers.
Choose the smallest viable shape:
- Dart package for reusable Dart-only logic.
- Flutter package for reusable widgets without native code.
- Plugin or FFI package when native platform implementations are required.
- Federated plugin only when independent platform ownership or release cadence justifies multiple packages.
Do not convert app-owned bridges into packages merely because code reuse is possible.
## Load references conditionally
- Read [public API and package quality](references/public-api-and-quality.md) for exports, deprecations, semver, and consumer compatibility.
- Read [plugins and federation](references/plugins-and-federation.md) for platform interfaces, registration, FFI, and federated architecture.
- Read [publication readiness](references/publication-readiness.md) for dry-run inspection, pub.dev checklist, and release verification.
## Boundaries
- `flutter-platform-integration` owns app-side native code and low-level channel/FFI mechanics.
- `flutter-dependency-upgrades` owns consumer-side package upgrades in an application.
- `flutter-build-release` owns application stores and binary builds, not pub package