snacknload 1.0.8 copy "snacknload: ^1.0.8" to clipboard
snacknload: ^1.0.8 copied to clipboard

SnackNLoad is a Flutter package for customizable loading indicators and top snackbars, making it easy to manage loading states and show success, error, or info messages.

SnackNLoad #

SnackNLoad is a Flutter package that provides a powerful, customizable, and easy-to-use solution for loading indicators and top snackbars in your Flutter application. With SnackNLoad, you can manage loading states and display success, error, or informational snackbars with ease.

snacknload

Features #

  • Multiple loading styles and indicators.
  • Customizable snackbars with different types (success, error, info).
  • Flexible masking options during loading.
  • Custom animations for loading indicators.
  • Support for toast notifications at different positions (top, center, bottom).
  • Easy integration and configuration.
  • Styled snackbar with position options of top, center, bottom.
  • Show dialog with customization options and adaptive support.
  • All features are accessible after initilization and no need to provide context because snacknload uses there in built global context.

Installation #

Add snacknload to your pubspec.yaml file:

dependencies:
  snacknload: ^1.0.2

Then, run:

flutter pub get

Getting Started #

1. Import the Package #

import 'package:snacknload/snacknload.dart';

2. Configure SnackNLoad #

Configure SnackNLoad in your main() function:

void main() {
  runApp(MyApp());
  configLoading();
}

void configLoading() {
  SnackNLoad.instance
    ..displayDuration = const Duration(milliseconds: 2000)
    ..indicatorType = IndicatorType.fadingCircle
    ..loadingStyle = LoadingStyle.dark
    ..indicatorSize = 45.0
    ..radius = 10.0
    ..progressColor = Colors.yellow
    ..backgroundColor = Colors.green
    ..indicatorColor = Colors.yellow
    ..textColor = Colors.yellow
    ..maskColor = Colors.blue.withOpacity(0.5)
    ..userInteractions = true
    ..dismissOnTap = false
    ..customAnimation = CustomAnimation();
}

3. Initialize SnackNLoad in Your App #

Use SnackNLoad.init() in the builder property of your MaterialApp:

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'SnackNLoad Example',
      theme: ThemeData(primarySwatch: Colors.blue),
      home: MyHomePage(title: 'SnackNLoad Example'),
      builder: SnackNLoad.init(),
    );
  }
}

4. Use SnackNLoad in Your Widgets #

Show a Loading Indicator

SnackNLoad.show(status: 'Loading...', maskType: MaskType.black);

Dismiss the Loading Indicator

SnackNLoad.dismiss();

Show a Success Snackbar

SnackNLoad.showSuccess('Operation Successful!');

Show an Error Snackbar

SnackNLoad.showError('Something went wrong!');

Show an Informational Snackbar

SnackNLoad.showInfo('Here is some information.');

Display a Toast

SnackNLoad.showToast('This is a toast message.');

Show a Top Snackbar

SnackNLoad.showSnackBar(
  'Welcome in year 2025!\nMay this year fulfill your dreams and bring happiness.',
  type: Type.success,
  title: "Hello",
  showIcon: false,
  position: Position.top,
);

Custom Animation

Create a custom animation for the loading indicator by extending SnackNLoadLoadingAnimation:

class CustomAnimation extends SnackNLoadLoadingAnimation {
  @override
  Widget buildWidget(
    Widget child,
    AnimationController controller,
    AlignmentGeometry alignment,
  ) {
    return Opacity(
      opacity: controller.value,
      child: RotationTransition(
        turns: controller,
        child: child,
      ),
    );
  }
}

Advanced Usage #

Loading Styles #

Choose from multiple loading styles:

SnackNLoad.instance.loadingStyle = LoadingStyle.dark;

Toast Positions #

Set toast position to top, center, or bottom:

SnackNLoad.instance.position = Position.top;

Indicator Types #

Switch between various indicator types:

SnackNLoad.instance.indicatorType = IndicatorType.wave;

Mask Types #

Control user interactions during loading:

SnackNLoad.instance.maskType = MaskType.black;

Example Application #

Check out the full example in the example folder to explore all the features.

Acknowledgments #

SnackNLoad is inspired by and extends the functionality of flutter_easyloading. We appreciate the contributions of the original package’s authors, which laid the groundwork for this project.

License #

SnackNLoad is released under the MIT License.

Contributing

We welcome contributions! Please feel free to open issues or submit pull requests.

Connect with me:

7
likes
150
points
228
downloads
screenshot

Publisher

verified publisherautoformsai.com

Weekly Downloads

SnackNLoad is a Flutter package for customizable loading indicators and top snackbars, making it easy to manage loading states and show success, error, or info messages.

Repository (GitHub)
View/report issues

Topics

#progress-loader #snackbar-flush-bar #toast-top-bottom-center #adaptive-dialog #show-error-success-warning

Documentation

API reference

License

MIT (license)

Dependencies

flutter, flutter_spinkit

More

Packages that depend on snacknload