Search packages, repositories and app categories

cool_stepper cover
Package detailsv1.2.1

cool_stepper

CoolStepper is a widget that displays a step by step sequence of operations. it could be helpful for a form wizard or onboarding.

AndroidiOSWebmacOSWindowsLinux
30-day downloads
980
Likes
147
Pub points
130

Install package

flutter pub add cool_stepper

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

CoolStepper is a customizable Flutter widget designed to guide users through sequential processes like form wizards or onboarding flows. It visually represents steps in a clear, interactive manner, supporting smooth transitions between stages. With support across all major platforms—Android, iOS, Web, macOS, Windows, and Linux—it ensures consistent user experiences. The widget is lightweight and easy to integrate, making it ideal for applications requiring step-by-step navigation.

Use cases

  • Onboarding tutorials
  • Multi-step forms
  • Checkout processes
  • Guided setup wizards
  • User registration flows

Key features

  • Customizable step indicators
  • Smooth transition animations
  • Cross-platform compatibility
  • Easy integration with existing UI
  • Supports horizontal and vertical layouts
  • Configurable active/inactive states

Suitable for

  • Developers building guided workflows
  • Apps needing intuitive navigation
  • Designers seeking modern stepper components
  • Projects requiring minimal boilerplate
  • Teams targeting multiple platforms

Considerations

  • Limited built-in validation logic
  • Requires manual state management
  • May need custom styling for complex designs
  • Not optimized for very large step counts
  • Depends on external dependencies for advanced features

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

cool_stepper

CoolStepper is a widget that displays a step by step sequence of operations. it could be helpful for a form wizard or onboarding.

Usage

To use this package, add cool_stepper as a dependency in your pubspec.yaml file. And add this import to your file.

import 'package:cool_stepper/cool_stepper.dart';

Screenshots

Example
CoolStepper(
   onCompleted: () {},
   steps: List<CoolStep>[
       CoolStep(
        title: "Basic Information",
        subtitle: "Please fill some of the basic information to get started",
        content: Container()
       ),
   ],
);

For each step, return a null, if you want the validation to pass or a String message which would be displayed if you set the showErrorSnackbar attribute to true.

validation: () {
          if (!_formKey.currentState!.validate()) {
            return 'Fill form correctly';
          }
          return null;
        },
CoolStepper Class
Attribute Data type Description Default Value
onCompleted Void Function() @required - A function that is triggers when all steps have been completed Null
steps List @required Null
config CoolStepperConfig Helps to customize your stepper CoolStepperConfig(backText: "BACK", nextText: "NEXT", stepText: "STEP", ofText: "OF")
showErrorSnackbar boolean Shows a snakbar at the bottom of the page when a step validation fails if set to true false
CoolStepperConfig Properties
Attribute Data type Description Default Value
backText String The text that should be displayed for the back button BACK
nextText String The text that should be displayed for the next button NEXT
finalText String The text that should be displayed for the next button on the final step FINISH
stepText String The text that describes the progress STEP
ofText String The text that describes the progress OF
headerColor Color This is the background color of the header Theme.of(context).primaryColor.withOpacity(0.1)
iconColor Color This is the color of the icon Color.black38
icon Icon This icon replaces the default icon Icon(Icons.help_outline,size: 18,Colors.black38)
titleTextStyle TextStyle This is the textStyle for the title text TextStyle(fontSize: 16.0,fontWeight: FontWeight.bold,color: Colors.black38)
subtitleTextStyle TextStyle This is the textStyle for the subtitle text TextStyle(fontSize: 14.0,fontWeight: FontWeight.w600,color: Colors.black)
backTextList List A List of string that when supplied will override 'backText'. Must be one less than the number of steps since for the first step, the backText won't be visible null
nextTextList List A List of string that when supplied will override 'nextText'Must be one less than the number of steps since the 'finalText' attribute is able to set the value for the final step's next button null

Categories

Dependencies

Dependency list 1 items

Source repository

Projects using this package

No data available yet.