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: February 25, 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.39K âŽïļ 367.5K
Dart 3 compatibleMaintenance Status: Good
A collection of loading indicators animated with flutter.

percent_indicator
ð 2.67K âŽïļ 730.4K
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.75K âŽïļ 137.2K
Dart 3 compatibleMaintenance Status: Poor
a widget provided to the flutter scroll component drop-down refresh and pull up load.
flutter_easyloading
ð 2.18K âŽïļ 70.1K
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.81K âŽïļ 91.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
ð 898 âŽïļ 211.6K
Dart 3 compatibleMaintenance Status: Good
Widget that makes it easy to implement a custom pull to refresh gesture.
step_progress_indicator
ð 880 âŽïļ 35.3K
Dart 3 compatibleMaintenance Status: Poor
Bar indicator made of a series of selected and unselected steps
liquid_pull_to_refresh
ð 761 âŽïļ 84.5K
Dart 3 compatibleMaintenance Status: Poor
A beautiful and custom refresh indicator with some cool animations and transitions for flutter.

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

loader_overlay
ð 508 âŽïļ 42.6K
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
ð 473 âŽïļ 29.8K
Dart 3 compatibleMaintenance Status: Good
A flutter widget that provides pull-down refresh and pull-up load.

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

sn_progress_dialog
ð 271 âŽïļ 5.4K
Dart 3 compatibleMaintenance Status: Good
Customizable progress dialog package for Flutter.(Captures the progress value)
loading_animations
ð 268 âŽïļ 3.4K
Dart 3 compatibleMaintenance Status: Poor
A Flutter package with a selection of simple yet very customizable set of loading animations.
flutter_animation_progress_bar
ð 232 âŽïļ 20.9K
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
ð 189 âŽïļ 41.3K
Dart 3 compatibleMaintenance Status: Average
a widget provided to the flutter scroll component drop-down refresh and pull up load.
progress_indicators
ð 196 âŽïļ 7.1K
Dart 3 compatibleMaintenance Status: Poor
A handful collection of some cool progress indicators and text animators.

loading_overlay
ð 183 âŽïļ 13.2K
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
ð 170 âŽïļ 6.2K
Dart 3 compatibleMaintenance Status: Poor
Open source Flutter package, simple circular progress indicator.
flutter_progress_hud
ð 130 âŽïļ 7.8K
Dart 3 compatibleMaintenance Status: Poor
Highly customizable modal progress indicator with fade animation.

liquid_progress_indicator_v2
ð 114 âŽïļ 3.6K
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 âŽïļ 5.3K
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
ð 89 âŽïļ 1.9K
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
ð 88 âŽïļ 2.7K
Dart 3 compatibleMaintenance Status: Good
Set of widgets provides make refresh by using pull down gesture.

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

page_view_dot_indicator
ð 69 âŽïļ 19K
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.

dashed_circular_progress_bar
ð 79 âŽïļ 7K
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.
loading_gifs
ð 84 âŽïļ 1K
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 âŽïļ 8K
Dart 3 compatibleMaintenance Status: Good
Flutter and Dart advanced linear progress indicator like Native Android Progress Bar

overlay_loader_with_app_icon
ð 81 âŽïļ 384
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
ð 66 âŽïļ 3.7K
Dart 3 compatibleMaintenance Status: Average
Flutter plugin for building pull to refresh effects with PullToRefreshNotification and PullToRefreshContainer quickly.

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

flutter_animated_loadingkit
ð 64 âŽïļ 858
Dart 3 compatibleMaintenance Status: Average
A collection of custom loading indicators animated with flutter.
simple_fontellico_progress_dialog
ð 59 âŽïļ 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 âŽïļ 450
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.3K
Dart 3 compatibleMaintenance Status: Average
Fully customizable and easy to use uiblock package for your flutter apps

flutter_svprogresshud
ð 51 âŽïļ 1.4K
Dart 3 compatibleMaintenance Status: Good
A clean and lightweight progress HUD for flutter app, based on SVProgressHUD.
screen_loader
ð 48 âŽïļ 452
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 âŽïļ 4K
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 âŽïļ 554
Dart 3 compatibleMaintenance Status: Average
Just like modal_progress_hud this is a simple widget wrapper to enable modal progress hud
water_bottle
ð 41 âŽïļ 67
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
ð 38 âŽïļ 635
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 âŽïļ 12
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 âŽïļ 761
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 âŽïļ 450
Dart 3 compatibleMaintenance Status: Poor
A useful collection of custom progress indicators for flutter.
loading_overlay_pro
ð 35 âŽïļ 647
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.6K
Dart 3 compatibleMaintenance Status: Average
An animated progress bar widget designed to be used with audio or video.
future_progress_dialog
ð 33 âŽïļ 895
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.
activity_ring
ð 29 âŽïļ 1.3K
Dart 3 compatibleMaintenance Status: Poor
Flutter Library to create Progress bars in Apple Watch style rings.
square_progress_bar
ð 28 âŽïļ 87
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.
modal_progress_indicator
ð 28 âŽïļ 54
Dart 3 compatibleMaintenance Status: Good
Configurable modal progress indicator that blocks access to a wrapped widget and its subtree.
nuts_activity_indicator
ð 22 âŽïļ 1.1K
Dart 3 compatibleMaintenance Status: Poor
Highly customizable activity indicator (spinner) for your Flutter apps based on the cupertino package.
progresso
ð 22 âŽïļ 707
Dart 3 compatibleMaintenance Status: Poor
A linear progress bar for flutter, allow for non-zero starting, points along line, and custom styling
load
ð 22 âŽïļ 425
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 âŽïļ 127
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin to display bottom loader using modal sheet.
flutter_hud
ð 19 âŽïļ 721
Dart 3 compatibleMaintenance Status: Average
A clean and lightweight progress HUD to show a running asynchronous task for Flutter.
cupertino_progress_bar
ð 15 âŽïļ 1.6K
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 âŽïļ 213
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 âŽïļ 71
Dart 3 compatibleMaintenance Status: Poor
A package that provides user defined colorful progress indicators.

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

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

custom_linear_progress_indicator
ð 5 âŽïļ 117
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 âŽïļ 39
Dart 3 compatibleMaintenance Status: Good
An animated timer that counts down like a progress bar
fancy_backdrop
ð 2 âŽïļ 24
Dart 3 compatibleMaintenance Status: Poor
fancy_backdrop will add a dimmed layer over your application with spinner.
liquid_progress_indicator
ð 713 âŽïļ 1.6K
Maintenance Status: Poor
A progress indicator with water-like effect in Flutter. Works similarly to Flutters own ProgressIndicator.
modal_progress_hud
ð 486 âŽïļ 481
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 âŽïļ 28
Maintenance Status: Poor
Help you to build pull-down refresh and pull-up loading in the simplest way.
loading
ð 59 âŽïļ 233
Maintenance Status: Poor
A flutter widget of loading progress Indicator. Easy to use, easy to extend
wave_progress_bars
ð 30 âŽïļ 47
Maintenance Status: Poor
A package provides an easy way to add wave bars in Flutter project.
flutter_progress_dialog
ð 24 âŽïļ 31
Maintenance Status: Poor
A flutter library for the progress dialog. Easily show and hide. Support specify custom loading widget.
intervalprogressbar
ð 15 âŽïļ 77
Maintenance Status: Poor
A interval progress bar for Flutter. Horizontal, vertical, colorful and interval progress.
awesome_loader
ð 14 âŽïļ 53
Maintenance Status: Poor
A Dart plugin for using some Awesome Loaders in your application.
flutter_colored_progress_indicators
ð 9 âŽïļ 37
Maintenance Status: Poor
An alternate animated progress indicator widget for flutter's CircularProgressIndicator and LinearProgressIndicator with Google color accents.
gradient_progress
ð 8 âŽïļ 29
Maintenance Status: Poor
A Gradient color support progressbar, fast way to have a beatiful gradient progress in your flutter app.