What problem does it solve? Managing state in Flutter apps often leads to memory leaks, incorrect provider usage, and untestable code. This Skill provides correct patterns for defining providers, handling disposal, passing arguments, and testing with Riverpod. ## Core Features & Use Cases - Provider Definition & Setup: Guides correct use of ProviderScope, codegen providers, FutureProvider, and Notifier classes with riverpod_lint enforcement. - Lifecycle & Disposal Management: Covers autoDispose, keepAlive, ref.onDispose, and invalidation to prevent memory leaks in parameterized providers. - Testing Support: Shows how to override dependencies with ProviderContainer and ProviderScope for isolated unit and widget tests. - Use Case: When building a Flutter todo app, use this Skill to define a TodosNotifier, pass a todo ID via a family provider, and write widget tests with a fake repository override. ## Quick Start Use the riverpod skill to set up a FutureProvider with autoDispose that fetches a todo by ID and write a widget test for it.