Flutter Gems is a curated list of 7250+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Hooks packages
Last updated: May 18, 2026
Flutter Hooks (inspired by React Hooks) offer an alternative to StatefulWidget, allowing developers to extract and reuse complex lifecycle logic (like animation controllers and scroll listeners) across multiple widgets effortlessly.
Best Practices for Hooks
- Eliminate Boilerplate: Use
useAnimationController()oruseTextEditingController(). The hook automatically handles instantiation ininitStateand cleanup indispose, completely eliminating the need to write standardStatefulWidgetboilerplate. - Custom Hooks: If you find yourself writing the exact same lifecycle logic in multiple places (like listening to a specific Stream and updating UI), extract it into a custom hook.
- Rules of Hooks: Hooks must be called unconditionally within the
buildmethod. Do not place hooks insideifstatements or loops, as the framework relies on the exact order of hook calls to maintain state accurately.
The complete list of Flutter Hooks, Reusable Lifecycle utilities, and Hook extensions is provided below.
flutter_hooks
👍 2.42K ⬇️ 355.7K
Dart 3 compatibleMaintenance Status: Good
A flutter implementation of React hooks. It adds a new kind of widget with enhanced code reuse.
hooks_riverpod
👍 928 ⬇️ 331.5K
Dart 3 compatibleMaintenance Status: Good
A reactive caching and data-binding framework. Riverpod makes working with asynchronous code a breeze.
hooked_bloc
👍 94 ⬇️ 4.9K
Dart 3 compatibleMaintenance Status: Good
Flutter package that simplifies injection and usage of Bloc/Cubit.
flutter_use
👍 80 ⬇️ 5.9K
Dart 3 compatibleMaintenance Status: Good
Essential Flutter hooks collection with 36 production-ready hooks for async operations, form management, UI interactions, and state management.
stacked_hooks
👍 70 ⬇️ 3.7K
Dart 3 compatibleMaintenance Status: Poor
Classes that help you make use of hooks when using the stacked package
flutterlifecyclehooks
👍 52 ⬇️ 828
Dart 3 compatibleMaintenance Status: Average
A flutter package that let you easily add hooks for application lifecycle state
reactives
👍 44 ⬇️ 16
Dart 3 compatibleMaintenance Status: Poor
A new way to extract/group/reuse common logic of StatefulWidget. Think of them like React hooks but for and of flutter.
flutter_hooks_bloc
👍 35 ⬇️ 822
Dart 3 compatibleMaintenance Status: Good
A flutter_bloc reimplementation based on flutter_hooks with the same API.
use_optimistic
👍 5 ⬇️ 9
Dart 3 compatibleMaintenance Status: Poor
An easy-to-use hook to optimistically update generic state and then resolve it later asynchronously by `accept`, `acceptAs`, or `reject`-ing.
flutter_use_sensors
👍 4 ⬇️ 41
Dart 3 compatibleMaintenance Status: Good
Device sensor hooks for Flutter applications. Provides accelerometer, gyroscope, and magnetometer hooks for motion detection and device orientation tracking.
flutter_use_audio
👍 2 ⬇️ 37
Dart 3 compatibleMaintenance Status: Good
Audio playback hooks for Flutter applications. Provides useAudio hook for managing audio playback with controls, state management, and position tracking.
flutter_use_battery
👍 1 ⬇️ 44
Dart 3 compatibleMaintenance Status: Good
Battery monitoring hooks for Flutter applications. Provides useBattery hook for real-time battery level and charging state tracking across platforms.
flutter_use_network_state
👍 1 ⬇️ 39
Dart 3 compatibleMaintenance Status: Good
Network connectivity hooks for Flutter applications. Provides useNetworkState hook for monitoring connection status, network type, and handling offline scenarios.
flutter_use_video
👍 0 ⬇️ 44
Dart 3 compatibleMaintenance Status: Good
Video playback hooks for Flutter applications. Provides useAssetVideo and useNetworkVideo hooks for comprehensive video player functionality and state management.
flutter_use_geolocation
👍 0 ⬇️ 40
Dart 3 compatibleMaintenance Status: Good
Geolocation hooks for Flutter applications. Provides useGeolocation hook for GPS tracking, position updates, and location-aware features with permission handling.
