Answer
Overview
flutter.dev hosts a comprehensive plugin/package directory at pub.dev, featuring thousands of packages for various use cases. Below is a categorized overview of essential Flutter plugins.
Categories of Plugins
1. State Management
| Package | Description | Popularity |
|---|---|---|
| provider | Simple state management | ⭐⭐⭐⭐⭐ |
| flutter_bloc | BLoC pattern implementation | ⭐⭐⭐⭐⭐ |
| riverpod | Modern provider alternative | ⭐⭐⭐⭐ |
| get | Simple state + routing + DI | ⭐⭐⭐⭐ |
| mobx | Observable state management | ⭐⭐⭐ |
| redux | Redux pattern for Flutter | ⭐⭐⭐ |
2. Networking
| Package | Description |
|---|---|
| dio | Advanced HTTP client |
| http | Simple HTTP client (official) |
| retrofit | Type-safe REST client (code gen) |
| graphql_flutter | GraphQL client |
| socket_io_client | Socket.IO client |
3. Local Storage
| Package | Description |
|---|---|
| shared_preferences | Key-value storage |
| hive | Fast NoSQL database |
| sqflite | SQLite database |
| isar | Fast NoSQL database (native) |
| objectbox | Object database |
| drift | Type-safe SQL (was moor) |
4. Firebase
| Package | Description |
|---|---|
| firebase_core | Firebase initialization |
| firebase_auth | Authentication |
| cloud_firestore | Firestore database |
| firebase_storage | Cloud storage |
| firebase_messaging | Push notifications |
| firebase_analytics | Analytics |
| firebase_crashlytics | Crash reporting |
5. UI Components
| Package | Description |
|---|---|
| cached_network_image | Image caching |
| flutter_svg | SVG rendering |
| lottie | Lottie animations |
| shimmer | Loading shimmer effect |
| carousel_slider | Image carousel |
| flutter_staggered_grid_view | Staggered grids |
| flutter_spinkit | Loading spinners |
6. Navigation/Routing
| Package | Description |
|---|---|
| go_router | Official routing (recommended) |
| auto_route | Type-safe routing (code gen) |
| fluro | Advanced routing |
| beamer | Router with navigation stack |
7. Dependency Injection
| Package | Description |
|---|---|
| get_it | Service locator |
| injectable | Code-gen DI with get_it |
| kiwi | Simple DI |
| provider | Also handles DI |
8. Forms & Validation
| Package | Description |
|---|---|
| flutter_form_builder | Form builder with validation |
| reactive_forms | Reactive forms (Angular-style) |
| formz | Form state management (BLoC) |
9. Authentication
| Package | Description |
|---|---|
| google_sign_in | Google OAuth |
| sign_in_with_apple | Apple Sign In |
| flutter_facebook_auth | Facebook Login |
| local_auth | Biometric authentication |
10. Media
| Package | Description |
|---|---|
| image_picker | Pick images/videos |
| camera | Camera access |
| video_player | Video playback |
| audioplayers | Audio playback |
| just_audio | Advanced audio player |
| flutter_sound | Audio recording |
11. Maps & Location
| Package | Description |
|---|---|
| google_maps_flutter | Google Maps widget |
| geolocator | Location services |
| geocoding | Address ↔ coordinates |
| location | Location updates |
12. Sensors
| Package | Description |
|---|---|
| sensors_plus | Accelerometer, gyroscope |
| battery_plus | Battery info |
| connectivity_plus | Network connectivity |
| device_info_plus | Device information |
13. Notifications
| Package | Description |
|---|---|
| flutter_local_notifications | Local notifications |
| awesome_notifications | Advanced notifications |
14. WebView
| Package | Description |
|---|---|
| webview_flutter | WebView widget |
| flutter_inappwebview | Advanced WebView |
15. Animations
| Package | Description |
|---|---|
| animations | Material motion animations |
| flutter_animate | Simple animations |
| rive | Rive animations |
16. Charts
| Package | Description |
|---|---|
| fl_chart | Beautiful charts |
| syncfusion_flutter_charts | Professional charts |
| charts_flutter | Google charts |
17. Internationalization
| Package | Description |
|---|---|
| intl | Official i18n support |
| easy_localization | Simple localization |
| flutter_localizations | Official localization (built-in) |
18. Testing
| Package | Description |
|---|---|
| mockito | Mocking library |
| bloc_test | BLoC testing |
| integration_test | Integration tests (official) |
19. Code Generation
| Package | Description |
|---|---|
| build_runner | Code generation runner |
| freezed | Immutable data classes |
| json_serializable | JSON serialization |
| retrofit_generator | Retrofit code gen |
| injectable_generator | Injectable DI gen |
20. Utils
| Package | Description |
|---|---|
| logger | Logging library |
| url_launcher | Open URLs, emails, etc. |
| share_plus | Share content |
| path_provider | Get app directories |
| package_info_plus | App version info |
| permission_handler | Request permissions |
| flutter_launcher_icons | Generate app icons |
| flutter_native_splash | Splash screens |
Top 20 Must-Have Plugins (2025)
- flutter_bloc — State management
- dio — HTTP client
- hive — Local database
- cached_network_image — Image caching
- go_router — Navigation
- get_it — Dependency injection
- freezed — Immutable data classes
- firebase_core — Firebase integration
- google_maps_flutter — Maps
- image_picker — Pick images
- flutter_local_notifications — Notifications
- shared_preferences — Key-value storage
- flutter_svg — SVG support
- url_launcher — Open URLs
- permission_handler — Permissions
- geolocator — Location services
- video_player — Video playback
- webview_flutter — WebView
- fl_chart — Charts
- lottie — Lottie animations
How to Find Plugins
1. Search on pub.dev
Visit pub.dev/flutter and search by keyword.
2. Flutter Favorites
Official "Flutter Favorite" badge indicates high-quality packages.
text🏅 Flutter Favorite
3. Filter by Platform
bash# Filter by platform - Android ✅ - iOS ✅ - Web ✅ - Windows ✅ - macOS ✅ - Linux ✅
4. Check Popularity
- Pub Points: Score out of 140 (quality metrics)
- Likes: Community upvotes
- Popularity: Usage statistics
Installation
yamldependencies: # Add package name and version dio: ^5.3.0 flutter_bloc: ^8.1.0 cached_network_image: ^3.3.0 dev_dependencies: # Development tools build_runner: ^2.4.0 mockito: ^5.4.0
bash# Install dependencies flutter pub get # Update dependencies flutter pub upgrade
Best Practices
yaml# ✅ Pin major versions dependencies: dio: ^5.3.0 # Allows 5.x.x (SemVer) # ✅ Check pub.dev for latest version # ✅ Read documentation before using # ❌ Don't use too many packages (bundle size) # ❌ Don't use unmaintained packages (check last update)
Summary
| Category | Top Packages |
|---|---|
| State | flutter_bloc, riverpod, provider |
| Network | dio, http, retrofit |
| Storage | hive, shared_preferences, sqflite |
| UI | cached_network_image, flutter_svg, lottie |
| Routing | go_router, auto_route |
| DI | get_it, injectable |
| Firebase | firebase_core, cloud_firestore |
Explore more: pub.dev/flutter