zeba_academy_loading_overlay 0.0.1 copy "zeba_academy_loading_overlay: ^0.0.1" to clipboard
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!

0
likes
140
points
79
downloads

Documentation

API reference

Publisher

verified publisherzeba.academy

Weekly Downloads

A powerful fullscreen loading overlay package with blur background, custom loaders, queue system, and global show/hide support.

Homepage

License

GPL-3.0 (license)

Dependencies

flutter

More

Packages that depend on zeba_academy_loading_overlay