Flutter Gems is a curated list of 7250+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Button and Progress Button packages
Last updated: May 18, 2026
Buttons are the primary call-to-action (CTA) in any app. Progress buttons enhance standard buttons by visually indicating a loading state directly inside the button itself.
Best Practices for Buttons
- Disable During Action: When a user taps a submit button, immediately disable it and show a loading spinner. This prevents accidental double-submissions, which can cause severe backend data duplication issues.
- Clear Hierarchy: Only have one primary filled button per screen. Secondary actions should be outlined buttons, and tertiary actions should be simple text buttons to establish a clear visual hierarchy.
- Touch Targets: Ensure all buttons have a minimum touch target height of 48x48 logical pixels to accommodate different finger sizes comfortably.
The complete list of Progress Buttons, Animated Buttons, and Custom CTA packages for Flutter is provided below.
group_button
👍 616 ⬇️ 162.6K
Dart 3 compatibleMaintenance Status: Poor
Flutter custom widget to make a group buttons. Included Radio and CheckBox buttons.
progress_state_button
👍 373 ⬇️ 1.7K
Dart 3 compatibleMaintenance Status: Poor
A customizable progress button widget for Flutter Android, IOS and Web.
neopop
👍 333 ⬇️ 406
Dart 3 compatibleMaintenance Status: Poor
NeoPop is CRED's inbuilt library for using NeoPop components in your app.
flutter_animated_button
👍 305 ⬇️ 882
Dart 3 compatibleMaintenance Status: Average
A flutter package project which contains a collection of cool and beautiful button animations.
animated_icon_button
👍 293 ⬇️ 2K
Dart 3 compatibleMaintenance Status: Poor
Flutter package to create custom animated IconButton. Includes all available icons. Based on native IconButton.
animated_button
👍 168 ⬇️ 719
Dart 3 compatibleMaintenance Status: Average
A simple and highly customizable Animated button with 3D like effect.
tap_debouncer
👍 120 ⬇️ 14.2K
Dart 3 compatibleMaintenance Status: Poor
Tap debounce simplifying widget. Wrap your button widget in TapDebounce widget and any taps will be disabled while tap callback is in progress.
any_animated_button
👍 105 ⬇️ 155
Dart 3 compatibleMaintenance Status: Poor
Button, which animates between idle, progress and success/error state, indicating that some process is running in the background.
outline_gradient_button
👍 97 ⬇️ 11
Dart 3 compatibleMaintenance Status: Poor
OutlineGradientButton package developed to create buttons with gradient outline.
async_button_builder
👍 89 ⬇️ 115
Dart 3 compatibleMaintenance Status: Poor
A builder to wrap around buttons that handles loading, disabled, error and succes states
pretty_animated_buttons
👍 88 ⬇️ 400
Dart 3 compatibleMaintenance Status: Average
A collection of fancy animated buttons package
gradient_coloured_buttons
👍 87 ⬇️ 37
Dart 3 compatibleMaintenance Status: Poor
Create visually appealing buttons with customizable gradient colors, dimensions, and border radius to enhance your Flutter UI.
timer_button
👍 84 ⬇️ 904
Dart 3 compatibleMaintenance Status: Good
Timer Button is a Flutter package that offers a customizable button widget capable of activation after a designated time interval.
animated_button_bar
👍 82 ⬇️ 884
Dart 3 compatibleMaintenance Status: Poor
A highly customizable button bar with animation on selected item.
rounded_loading_button_plus
👍 79 ⬇️ 2.1K
Dart 3 compatibleMaintenance Status: Poor
A simple implementation of an animated loading button widget for Flutter
flutter_swipe_button
👍 68 ⬇️ 13.9K
Dart 3 compatibleMaintenance Status: Average
Avoid accidental clicks or dialogs to prevent them using SwipeButton.
splash
👍 78 ⬇️ 333
Dart 3 compatibleMaintenance Status: Average
This package contains a few InkSplash and InkRipple alternatives for a better UI
easy_loading_button
👍 68 ⬇️ 513
Dart 3 compatibleMaintenance Status: Good
A simple, easy to use, and customizable progress/loading _Material Flutter Button_ that supports variety of button styles (elevated, outlined, text).
favorite_button
👍 65 ⬇️ 256
Dart 3 compatibleMaintenance Status: Poor
favorite_button is a flutter library that allows you to create heart and star shaped favorite featured buttons with animation effects too.
nice_buttons
👍 64 ⬇️ 70
Dart 3 compatibleMaintenance Status: Poor
A beautiful, animated, and customizable 3D button for your flutter project with a built-in progress indicator and nice on press animations.
flutter_add_to_cart_button
👍 51 ⬇️ 43
Dart 3 compatibleMaintenance Status: Average
A Flutter package to create an Add To Cart Button. It will be useful for your awesome app.
simple_animated_button
👍 51 ⬇️ 43
Dart 3 compatibleMaintenance Status: Poor
This package offers a collection of ready-to-use, efficiently crafted, and elegantly designed animated buttons.
pushable_button
👍 50 ⬇️ 94
Dart 3 compatibleMaintenance Status: Poor
A 3D pushable button. Ideal for important CTAs in the app.
chiclet
👍 48 ⬇️ 851
Dart 3 compatibleMaintenance Status: Good
Chiclet provides you with highly customizable island-style buttons similar to those found in the popular language learning app Duolingo and Figma courses.
spring_button
👍 42 ⬇️ 389
Dart 3 compatibleMaintenance Status: Poor
A simple widget for having child widgets that respond to gestures with a spring animation.
flat_3d_button
👍 39 ⬇️ 88
Dart 3 compatibleMaintenance Status: Poor
A simple 3D flat button with click animation, flat 3d button contains 3 methods, a flat 3d button with any widget as it's child, text as it's child and also an icon as it's child
button_animations
👍 39 ⬇️ 13
Dart 3 compatibleMaintenance Status: Poor
A package that helps you make highly customizable animated 3d-buttons.
loading_icon_button
👍 38 ⬇️ 446
Dart 3 compatibleMaintenance Status: Good
Loading button with icon and text in Flutter. It's working on all flutter platforms. It's a simple way to show a loading button.
flutter_awesome_buttons
👍 34 ⬇️ 211
Dart 3 compatibleMaintenance Status: Poor
A new Flutter package project.
multi_state_button
👍 34 ⬇️ 161
Dart 3 compatibleMaintenance Status: Poor
A package which provides multiple states for a button with endless customizability.
async_button
👍 33 ⬇️ 18
Dart 3 compatibleMaintenance Status: Poor
Customized buttons for asyncronous onPressed function. Supports seamless animation between [idle], [loading], [success] and [failure] button states.
flutter_grid_button
👍 30 ⬇️ 2.6K
Dart 3 compatibleMaintenance Status: Good
Flutter widget that arrange buttons in a grid. It is useful for making a number pad, calculator, and so on.
holdable_button
👍 30 ⬇️ 142
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin that enables users to create buttons with a hold gesture, triggering a loading animation around the button while held.
loading_btn
👍 28 ⬇️ 185
Dart 3 compatibleMaintenance Status: Poor
An animated loading button package that allows you to create beautiful loadding button with lots of customized properties.
flutter_scale_tap
👍 27 ⬇️ 811
Dart 3 compatibleMaintenance Status: Poor
Scale and opacity animated Button for Flutter
gradient_elevated_button
👍 15 ⬇️ 961
Dart 3 compatibleMaintenance Status: Good
Custom Flutter button with gradient background for visually appealing UI.
gradiant_button_animations
👍 14 ⬇️ 18
Dart 3 compatibleMaintenance Status: Poor
' Hi Flutter Developers anyone know button "Start Coding" in https://codepen.io/ He has a very nice animation On Hover i implemented it as a UI Challenge .. and this is the result'
imagebutton
👍 13 ⬇️ 39
Dart 3 compatibleMaintenance Status: Average
ImageButton is a simple plugin that allows you to use your images as buttons with two different states (pressed / unpressed).
fbutton_nullsafety
👍 11 ⬇️ 71
Dart 3 compatibleMaintenance Status: Poor
Let developers just need to grasp only one button component.
bouncy_button
👍 7 ⬇️ 79
Dart 3 compatibleMaintenance Status: Good
A highly customizable Flutter button widget with engaging 3D depth effects, smooth animations, and extensive styling options.
custom_animate_btn
👍 1 ⬇️ 34
Dart 3 compatibleMaintenance Status: Average
A customizable and animated sliding button widget for Flutter apps. Supports smooth animations, gradient effects, and completion callbacks.
glass_fish_button
👍 1 ⬇️ 24
Dart 3 compatibleMaintenance Status: Good
A glassmorphism-inspired Flutter button widget with switchable light and dark themes.
platform_adaptive_buttons
👍 1 ⬇️ 6
Dart 3 compatibleMaintenance Status: Average
A Flutter package that provides a custom button that adapts to the platform's design guidelines.
rounded_loading_button
👍 539 ⬇️ 800
Maintenance Status: Poor
A simple implementation of an animated loading button widget for Flutter
argon_buttons_flutter
👍 357 ⬇️ 140
Maintenance Status: Poor
This package would help you to create beautiful Loading and Timer buttons. No need to worry animations and states for each of your buttons.
pimp_my_button
👍 71 ⬇️ 8
Maintenance Status: Poor
A package which adds a much needed feature to all pressable objects.
nice_button
👍 63 ⬇️ 33
Maintenance Status: Poor
A Flutter package for Android and IOS to design nice buttons with no hassle in your app. Enjoy !
fbutton
👍 43 ⬇️ 35
Maintenance Status: Poor
Let developers just need to grasp only one button component.
future_button
👍 39 ⬇️ 25
Maintenance Status: Poor
Customizable Material and Cupertino buttons with progress bars. Useful if you want to show a loading indicator when user presses some action, and show the result afterwards.
loading_transition_button
👍 36 ⬇️ 14
Maintenance Status: Poor
A Customizable transition button for Flutter. Animate you loading proccess with ease.
animated_progress_button
👍 27 ⬇️ 8
Maintenance Status: Poor
Are you looking for a solution to make your button become professional? This package can help you with all animation inspiration from Pinterest.
flutter_progress_button
👍 22 ⬇️ 37
Maintenance Status: Poor
flutter_progress_button is a free and open source (MIT license) Material Flutter Button that supports variety of buttons style demands. It is designed to be easy to use and customizable.
progress_indicator_button
👍 20 ⬇️ 9
Maintenance Status: Poor
A simple button which can transform and show a progress indicator.
awesome_button
👍 18 ⬇️ 22
Maintenance Status: Poor
This is a pre-built button with an awesome look for flutter.
customtogglebuttons
👍 14 ⬇️ 28
Maintenance Status: Poor
A custom ToggleButtons implementation that allows more flexibility than Flutter's inbuilt ToggleButtons.
