zeba_academy_loading_overlay 0.0.1
zeba_academy_loading_overlay: ^0.0.1 copied to clipboard
A powerful fullscreen loading overlay package with blur background, custom loaders, queue system, and global show/hide support.
zeba_academy_loading_overlay #
A beautiful and production-ready fullscreen loading overlay package for Flutter with blur background, custom loaders, global controller support, and intelligent queue management.
✨ Features #
✅ Fullscreen loading overlay
✅ Blur background effect
✅ Global show/hide controller
✅ Custom loader widgets
✅ Queue-based overlay handling
✅ Smooth animations
✅ Lightweight & easy integration
✅ Production-ready architecture
✅ Custom messages support
✅ Configurable barrier color & blur
📦 Installation #
Add this to your pubspec.yaml:
dependencies:
zeba_academy_loading_overlay: latest
Then run:
flutter pub get
🚀 Getting Started #
Import the package:
import 'package:zeba_academy_loading_overlay/zeba_academy_loading_overlay.dart';
Basic Usage #
Show Loader #
ZebaLoadingController.show(
context,
message: 'Loading...',
);
Hide Loader #
ZebaLoadingController.hide();
🪄 Full Example #
import 'package:flutter/material.dart';
import 'package:zeba_academy_loading_overlay/zeba_academy_loading_overlay.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: const HomePage(),
);
}
}
class HomePage extends StatelessWidget {
const HomePage({super.key});
Future<void> _loadData(BuildContext context) async {
ZebaLoadingController.show(
context,
message: 'Please wait...',
blur: 8,
);
await Future.delayed(const Duration(seconds: 3));
ZebaLoadingController.hide();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Loading Overlay Demo'),
),
body: Center(
child: ElevatedButton(
onPressed: () => _loadData(context),
child: const Text('Show Loader'),
),
),
);
}
}
🎨 Custom Loader #
You can use your own custom loader widget.
ZebaLoadingController.show(
context,
loader: const FlutterLogo(
size: 60,
),
message: 'Uploading...',
);
🌫 Blur Background #
Customize blur intensity easily.
ZebaLoadingController.show(
context,
blur: 12,
);
🎨 Custom Barrier Color #
ZebaLoadingController.show(
context,
barrierColor: Colors.black54,
);
🧠 Queue System #
The package intelligently manages multiple loading requests.
ZebaLoadingController.show(context, id: 'api_1');
ZebaLoadingController.show(context, id: 'api_2');
ZebaLoadingController.hide('api_1');
/// Loader still visible
ZebaLoadingController.hide('api_2');
/// Loader hidden
⚙ Parameters #
| Parameter | Type | Description |
|---|---|---|
context |
BuildContext |
Flutter context |
id |
String |
Unique queue ID |
loader |
Widget? |
Custom loader widget |
message |
String? |
Loading message |
blur |
double |
Blur intensity |
barrierColor |
Color |
Background overlay color |
dismissible |
bool |
Allow tap dismiss |
📁 Package Structure #
lib/
│
├── zeba_academy_loading_overlay.dart
│
├── src/
│ ├── loading_controller.dart
│ ├── loading_overlay.dart
│ ├── overlay_manager.dart
│ ├── queue_manager.dart
│ └── widgets/
│ └── default_loader.dart
🧪 Testing #
Run tests using:
flutter test
📊 Future Improvements #
- Lottie animation support
- Progress indicators
- Overlay themes
- Smart auto-dismiss
- Success/error states
- Web optimizations
- Animated transitions
🤝 Contributing #
Contributions are welcome!
Feel free to open issues or submit pull requests to improve the package.
📄 License #
This project is licensed under the MIT License.
👨💻 About Me #
✨ I’m Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.
You can learn more about me and my work at sufyanism.com or connect with me on LinkedIn
🚀 Your all-in-one learning hub! #
Explore courses and resources in coding, tech, and development at zeba.academy and code.zeba.academy.
Empower yourself with practical skills through curated tutorials, real-world projects, and hands-on experience.
Level up your tech game today! 💻✨
Zeba Academy #
A learning platform dedicated to coding, technology, and development.
➡ Visit our main site: https://zeba.academy
➡ Explore hands-on courses and resources: https://code.zeba.academy
➡ YouTube: https://www.youtube.com/@zeba.academy
➡ Instagram: https://www.instagram.com/zeba.academy/
❤️ Support #
If you like this package, please give it a ⭐ on GitHub and share it with the Flutter community.
🙌 Thank You #
Thank you for visiting and supporting open-source development!