A simple and customizable Flutter package for showing loading indicator. It helps developers display smooth and responsive loading overlays with minimal setup and easy-to-use APIs. .
- Normal loading overlay with blur effect
- Customizable
CircularProgressIndicator - Progress loader with percentage display
- Easy to show and dismiss
Add this to your pubspec.yaml:
dependencies: easyloading_plus: ^1.0.0Then run:
flutter pub get Show normal loader
EasyLoading.show(context); Show progress loader
EasyLoading.showProgress(context, 50); // 50% complete Dismiss loader
EasyLoading.dismiss(); See example/main.dart for a full working example.
import 'dart:async'; import 'package:flutter/material.dart'; import 'package:easyloading_plus/easyloading_plus.dart'; void main() { runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( title: 'EasyLoading Example', home: const HomePage(), ); } } class HomePage extends StatelessWidget { const HomePage({super.key}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: const Text("EasyLoading Example")), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ ElevatedButton( onPressed: () { EasyLoading.show(context); Future.delayed(const Duration(seconds: 3), () { EasyLoading.dismiss(); }); }, child: const Text("Show Loader"), ), const SizedBox(height: 20), ElevatedButton( onPressed: () { double percent = 0; EasyLoading.showProgress(context, percent); // simulate progress using Timer.periodic Timer.periodic(const Duration(milliseconds: 300), (timer) { percent += 10; if (percent > 100) { EasyLoading.dismiss(); timer.cancel(); } else { EasyLoading.showProgress(context, percent); } }); }, child: const Text("Show Progress Loader"), ), ], ), ), ); } }