Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Indicators: Loading, Refresh, Progress packages
Last updated: March 23, 2025
An indicator is a small animated graphical icon (called spinner), that indicates the status of a particular task or process such as status of a network request, asset or image loading, or the progress of a task. Many indicators also include a text label that provides additional information about the status of the application or process.
Often the Flutter app would be performing an asynchronous operation and it would be necessary to prevent the user from tapping or using the app while this operation is in progress. It might be a very quick operation, but sometimes can take a bit longer due to network connectivity and other reasons. To prevent users from accidently tapping the button twice, or changing inputs. To solve this problem a loading indicator can be displayed in an overlay while the operation is in progress. This overlay indicator is also known as Heads-up-display (HUD) indicator.
Based on functionality, the various types of indicators available in Flutter are:
- Loading Indicator - It is a circular or linear indicator which animates while the time consuming task is in progress. Apart from the indicator, it can also be paired up with a text such as "Loading".
- Progress Indicator - Progress indicators are similar to loading indicators, and they also inform the user about the status of ongoing process, such as task progress percentage, stage of progress, etc. They can also communicate and indicate available actions, such as whether users can navigate away from the current screen. For example, in a hyperlocal delivery app, the user can navigate away from the screen once the payment step is complete, while the progress indicator will continue updating.
- Refresh Indicator - Whenever a user performs the swipe-to-refresh action, vertical swipe to trigger a callback method that refreshes data, a distinctive progress bar is displayed. This progress indicator is also known as refresh indicator.
The complete list of Flutter packages that can help you add a Loading Indicator, Progress Indicator, Refresh Indicator or Heads-up-display (HUD) indicator to your Flutter app is provided below.

flutter_spinkit
ð 4.42K âŽïļ 386.1K
Dart 3 compatibleMaintenance Status: Good
A collection of loading indicators animated with flutter.

percent_indicator
ð 2.68K âŽïļ 774.9K
Dart 3 compatibleMaintenance Status: Good
Library that allows you to display progress widgets based on percentage, can be Circular or Linear, you can also customize it to your needs.
pull_to_refresh
ð 2.76K âŽïļ 150.6K
Dart 3 compatibleMaintenance Status: Poor
a widget provided to the flutter scroll component drop-down refresh and pull up load.
flutter_easyloading
ð 2.19K âŽïļ 79.8K
Dart 3 compatibleMaintenance Status: Poor
âĻA clean and lightweight loading/toast widget for Flutter, Easy to use without context, Support iOS, Android and Web

loading_animation_widget
ð 1.83K âŽïļ 114.4K
Dart 3 compatibleMaintenance Status: Good
Loading animation or loading spiner or loader. It's used to show loading animation when the app is in loading state or something is processing for uncertain time.

custom_refresh_indicator
ð 910 âŽïļ 237.9K
Dart 3 compatibleMaintenance Status: Good
Widget that makes it easy to implement a custom pull to refresh gesture.
step_progress_indicator
ð 886 âŽïļ 40.6K
Dart 3 compatibleMaintenance Status: Poor
Bar indicator made of a series of selected and unselected steps
liquid_pull_to_refresh
ð 768 âŽïļ 86.9K
Dart 3 compatibleMaintenance Status: Poor
A beautiful and custom refresh indicator with some cool animations and transitions for flutter.

loading_indicator
ð 642 âŽïļ 59.6K
Dart 3 compatibleMaintenance Status: Average
A collection loading animations written in pure dart. Out of the box, no extra dependency.

loader_overlay
ð 513 âŽïļ 49.1K
Dart 3 compatibleMaintenance Status: Good
A simple package to simplify screen management. When loading any async task, this package prevent the user from interacting with the screen until the async task finishes.
easy_refresh
ð 477 âŽïļ 29.1K
Dart 3 compatibleMaintenance Status: Good
A flutter widget that provides pull-down refresh and pull-up load.

modal_progress_hud_nsn
ð 277 âŽïļ 12.8K
Dart 3 compatibleMaintenance Status: Average
A modal progress indicator widget with Sound Null Safety. A fork of modal_progress_hud

sn_progress_dialog
ð 272 âŽïļ 6.2K
Dart 3 compatibleMaintenance Status: Good
Customizable progress dialog package for Flutter.(Captures the progress value)
loading_animations
ð 268 âŽïļ 3.6K
Dart 3 compatibleMaintenance Status: Poor
A Flutter package with a selection of simple yet very customizable set of loading animations.
flutter_animation_progress_bar
ð 234 âŽïļ 21.3K
Dart 3 compatibleMaintenance Status: Poor
This colorful Flutter widget package aims to show an animation progress bar in reactive style. It also supports both vertical and horizontal bar.
pull_to_refresh_flutter3
ð 196 âŽïļ 42.1K
Dart 3 compatibleMaintenance Status: Average
a widget provided to the flutter scroll component drop-down refresh and pull up load.
progress_indicators
ð 197 âŽïļ 7.9K
Dart 3 compatibleMaintenance Status: Poor
A handful collection of some cool progress indicators and text animators.

loading_overlay
ð 185 âŽïļ 14.5K
Dart 3 compatibleMaintenance Status: Good
A modal progress indicator widget that fades in and out. Wrap around another widget to block access to widget during an async call.
simple_circular_progress_bar
ð 173 âŽïļ 6.3K
Dart 3 compatibleMaintenance Status: Poor
Open source Flutter package, simple circular progress indicator.
flutter_progress_hud
ð 129 âŽïļ 8.4K
Dart 3 compatibleMaintenance Status: Poor
Highly customizable modal progress indicator with fade animation.

liquid_progress_indicator_v2
ð 116 âŽïļ 4.2K
Dart 3 compatibleMaintenance Status: Average
Based on https://pub.dev/packages/liquid_progress_indicator to fix a issue after Flutter 3.10 A progress indicator with water-like effect in Flutter. Works similarly to Flutters own ProgressIndicator.
flutter_overlay_loader
ð 111 âŽïļ 6.6K
Dart 3 compatibleMaintenance Status: Poor
A simple Flutter package for managing overlay loading when fetching remote data or any long-running async task. Flutter overlay loader is easy to use.

widget_loading
ð 91 âŽïļ 2.1K
Dart 3 compatibleMaintenance Status: Good
An easy way to hide a widget when you have nothing to show yet and need a loading animation at the same time.

swipe_refresh
ð 89 âŽïļ 3.1K
Dart 3 compatibleMaintenance Status: Good
Set of widgets provides make refresh by using pull down gesture.

dashed_circular_progress_bar
ð 83 âŽïļ 8.2K
Dart 3 compatibleMaintenance Status: Average
Dashed circular progress bar shows the progress of a task in a circle, which can be customized in color, style, and shape.

flutter_rounded_progress_bar
ð 86 âŽïļ 1.9K
Dart 3 compatibleMaintenance Status: Average
Rounded Progressbar in Flutter that customize color and border.

page_view_dot_indicator
ð 69 âŽïļ 21.1K
Dart 3 compatibleMaintenance Status: Average
A simple and animated page view indicator in the form of dots, which you can customise color, size, space and duration.
loading_gifs
ð 84 âŽïļ 701
Dart 3 compatibleMaintenance Status: Poor
Loading indicator GIFs. Material and Cupertino (Android and iOS) loading indicators in assorted sizes. Use as placeholders for loading remote image assets.

linear_progress_bar
ð 77 âŽïļ 6.7K
Dart 3 compatibleMaintenance Status: Good
Flutter and Dart advanced linear progress indicator like Native Android Progress Bar

overlay_loader_with_app_icon
ð 82 âŽïļ 507
Dart 3 compatibleMaintenance Status: Good
A flutter package that shows a beautiful overlay loader with appIcon when initiating an async call.

pull_to_refresh_notification
ð 67 âŽïļ 4.2K
Dart 3 compatibleMaintenance Status: Average
Flutter plugin for building pull to refresh effects with PullToRefreshNotification and PullToRefreshContainer quickly.

circular_seek_bar
ð 63 âŽïļ 3.3K
Dart 3 compatibleMaintenance Status: Average
Circular progress/seek bar package for flutter that supports customizable animations, dashes, and gradients.

flutter_animated_loadingkit
ð 65 âŽïļ 756
Dart 3 compatibleMaintenance Status: Average
A collection of custom loading indicators animated with flutter.
simple_fontellico_progress_dialog
ð 59 âŽïļ 1.1K
Dart 3 compatibleMaintenance Status: Poor
This package helps you to render a progress dialog with different types of loading indicator.
square_percent_indicater
ð 56 âŽïļ 408
Dart 3 compatibleMaintenance Status: Poor
Flutter package showing progress percent value in square , square shape percent indicator is used commonly in designs

uiblock
ð 52 âŽïļ 1.8K
Dart 3 compatibleMaintenance Status: Average
Fully customizable and easy to use uiblock package for your flutter apps

flutter_svprogresshud
ð 51 âŽïļ 1.8K
Dart 3 compatibleMaintenance Status: Good
A clean and lightweight progress HUD for flutter app, based on SVProgressHUD.
screen_loader
ð 48 âŽïļ 499
Dart 3 compatibleMaintenance Status: Poor
Easy to use mixin ScreenLoader, which will handle the loading on the screen without using state or navigation stack. You can customise the loading as well.

progress_dialog_null_safe
ð 44 âŽïļ 4.3K
Dart 3 compatibleMaintenance Status: Average
Reviving an old progress dialog
simple_progress_indicators
ð 39 âŽïļ 5.4K
Dart 3 compatibleMaintenance Status: Poor
Simple progress indicators package with solid colors and gradients. Can be used to show progress or for simple animation.

blurry_modal_progress_hud
ð 41 âŽïļ 684
Dart 3 compatibleMaintenance Status: Average
Just like modal_progress_hud this is a simple widget wrapper to enable modal progress hud
water_bottle
ð 41 âŽïļ 131
Dart 3 compatibleMaintenance Status: Poor
This library add a bottle widget to your screen. You can use it as a loading indicator, a progress tracker, or any kind of measurement suits your needs.
multi_circular_slider
ð 39 âŽïļ 482
Dart 3 compatibleMaintenance Status: Poor
A Flutter package for Android, iOS & Web which helps creating multi-layered animated circular progress bar which can help display multiple values in a single bar.
flutter_advanced_progress
ð 37 âŽïļ 18
Dart 3 compatibleMaintenance Status: Poor
An advanced progress widget, that can be fully customized with bunch of properties, just try it and enjoy!
flare_loading
ð 36 âŽïļ 672
Dart 3 compatibleMaintenance Status: Poor
Loading widget based on a custom Flare animation, allow you to create beautiful custom loading widgets or dialogs
progress_indicator
ð 36 âŽïļ 430
Dart 3 compatibleMaintenance Status: Poor
A useful collection of custom progress indicators for flutter.
loading_overlay_pro
ð 35 âŽïļ 618
Dart 3 compatibleMaintenance Status: Poor
A new Flutter project with a simple widget wrapper set of loading animations for Flutter projects.

flutter_animated_progress_bar
ð 33 âŽïļ 1.8K
Dart 3 compatibleMaintenance Status: Average
An animated progress bar widget designed to be used with audio or video.
future_progress_dialog
ð 33 âŽïļ 878
Dart 3 compatibleMaintenance Status: Poor
future_progress_dialog is a simple progress dialog library for async tasks. FutureProgressDialog start when you call showDialog function, but dismiss automatically when future task is finished.
modal_progress_indicator
ð 32 âŽïļ 71
Dart 3 compatibleMaintenance Status: Good
Configurable modal progress indicator that blocks access to a wrapped widget and its subtree.
activity_ring
ð 29 âŽïļ 1.4K
Dart 3 compatibleMaintenance Status: Poor
Flutter Library to create Progress bars in Apple Watch style rings.
square_progress_bar
ð 28 âŽïļ 85
Dart 3 compatibleMaintenance Status: Poor
A square progress bar that you can use easily, Just provide the progress in a range from 0.0 to 1.0 and you are set to go.
nuts_activity_indicator
ð 22 âŽïļ 1.7K
Dart 3 compatibleMaintenance Status: Poor
Highly customizable activity indicator (spinner) for your Flutter apps based on the cupertino package.
progresso
ð 23 âŽïļ 505
Dart 3 compatibleMaintenance Status: Poor
A linear progress bar for flutter, allow for non-zero starting, points along line, and custom styling
load
ð 22 âŽïļ 636
Dart 3 compatibleMaintenance Status: Poor
Global loading widget, Pure flutter library, not use native code. It is similar to OKToast in use.
bottom_loader
ð 21 âŽïļ 97
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin to display bottom loader using modal sheet.
flutter_hud
ð 19 âŽïļ 666
Dart 3 compatibleMaintenance Status: Average
A clean and lightweight progress HUD to show a running asynchronous task for Flutter.
cupertino_progress_bar
ð 16 âŽïļ 2.1K
Dart 3 compatibleMaintenance Status: Poor
A non-interactive progress bar includes a track that fills from left to right to show the progression of a task with a known duration.
easy_loader
ð 16 âŽïļ 363
Dart 3 compatibleMaintenance Status: Poor
The easiest way to handle a simple full screen loader in Flutter. Written in Dart. Fully customizable.
colorful_progress_indicators
ð 11 âŽïļ 81
Dart 3 compatibleMaintenance Status: Poor
A package that provides user defined colorful progress indicators.

stylish_pull_to_refresh
ð 11 âŽïļ 64
Dart 3 compatibleMaintenance Status: Good
This is a Flutter package with multiple RefreshIndicator animated styles.

flutter_circular_progress_indicator
ð 6 âŽïļ 69
Dart 3 compatibleMaintenance Status: Good
Flutter Beautiful Loading

custom_linear_progress_indicator
ð 5 âŽïļ 156
Dart 3 compatibleMaintenance Status: Good
Provides a customizable linear progress indicator widget for Flutter applications, offering animation and visual customization options.

progress_bar_countdown
ð 3 âŽïļ 214
Dart 3 compatibleMaintenance Status: Good
An animated timer that counts down like a progress bar
fancy_backdrop
ð 2 âŽïļ 27
Dart 3 compatibleMaintenance Status: Poor
fancy_backdrop will add a dimmed layer over your application with spinner.
liquid_progress_indicator
ð 714 âŽïļ 1.3K
Maintenance Status: Poor
A progress indicator with water-like effect in Flutter. Works similarly to Flutters own ProgressIndicator.
modal_progress_hud
ð 486 âŽïļ 465
Maintenance Status: Poor
A modal progress indicator widget (HUD = heads-up display). Wrap around another widget to block access to widget during an async call. Also accepts a custom spinner.
frefresh
ð 119 âŽïļ 31
Maintenance Status: Poor
Help you to build pull-down refresh and pull-up loading in the simplest way.
loading
ð 59 âŽïļ 144
Maintenance Status: Poor
A flutter widget of loading progress Indicator. Easy to use, easy to extend
wave_progress_bars
ð 30 âŽïļ 44
Maintenance Status: Poor
A package provides an easy way to add wave bars in Flutter project.
flutter_progress_dialog
ð 24 âŽïļ 32
Maintenance Status: Poor
A flutter library for the progress dialog. Easily show and hide. Support specify custom loading widget.
intervalprogressbar
ð 15 âŽïļ 65
Maintenance Status: Poor
A interval progress bar for Flutter. Horizontal, vertical, colorful and interval progress.
awesome_loader
ð 14 âŽïļ 51
Maintenance Status: Poor
A Dart plugin for using some Awesome Loaders in your application.
flutter_colored_progress_indicators
ð 9 âŽïļ 43
Maintenance Status: Poor
An alternate animated progress indicator widget for flutter's CircularProgressIndicator and LinearProgressIndicator with Google color accents.
gradient_progress
ð 8 âŽïļ 32
Maintenance Status: Poor
A Gradient color support progressbar, fast way to have a beatiful gradient progress in your flutter app.