zeba_academy_bottom_sheet 0.0.1
zeba_academy_bottom_sheet: ^0.0.1 copied to clipboard
A customizable Flutter bottom sheet package with draggable sheets, snap points, blur background, fullscreen mode, animations and controller support.
Zeba Academy Bottom Sheet #
A beautiful and customizable Flutter bottom sheet package with draggable sheets, snap points, blur background, fullscreen mode, controller support, and Material 3 styling.
✨ Features #
zeba_academy_bottom_sheet provides a modern, flexible bottom sheet experience for Flutter applications.
Core Features #
✅ Draggable bottom sheet
✅ Snap point support
✅ Fullscreen mode
✅ Blur background effect
✅ Material 3 design
✅ Custom header support
✅ Drag handle indicator
✅ Scrollable content support
✅ Controller support
✅ Rounded corners customization
✅ Custom colors
✅ Safe area support
✅ Null safety support
✅ Lightweight with zero external dependencies
📦 Installation #
Add this package to your pubspec.yaml:
dependencies:
zeba_academy_bottom_sheet: ^0.0.1
Then run:
flutter pub get
🚀 Basic Usage #
Import the package:
import 'package:zeba_academy_bottom_sheet/zeba_academy_bottom_sheet.dart';
Show a simple bottom sheet:
ZebaBottomSheet.show(
context: context,
child: Column(
children: [
Text(
"Hello Bottom Sheet",
style: Theme.of(context).textTheme.titleLarge,
),
],
),
);
🎨 Custom Header #
You can add a custom header widget:
ZebaBottomSheet.show(
context: context,
header: const ListTile(
title: Text("Profile"),
subtitle: Text("Account Information"),
),
child: const Text(
"Sheet Content",
),
);
🖱 Draggable Bottom Sheet #
The package supports draggable sheets using Flutter's native scrolling system.
ZebaBottomSheet.show(
context: context,
child: ListView.builder(
itemCount: 50,
itemBuilder: (context, index) {
return ListTile(
title: Text(
"Item $index",
),
);
},
),
);
📌 Snap Points #
Control the sheet positions using snap points.
ZebaBottomSheet.show(
context: context,
config: const ZebaBottomSheetConfig(
snapPoints: [
0.3,
0.6,
1.0,
],
),
child: const Text(
"Snap Bottom Sheet",
),
);
Available positions:
| Value | Position |
|---|---|
| 0.3 | 30% height |
| 0.6 | 60% height |
| 1.0 | Full height |
🌫 Blur Background #
Enable background blur:
ZebaBottomSheet.show(
context: context,
config: const ZebaBottomSheetConfig(
blurBackground: true,
),
child: const Text(
"Blur Effect",
),
);
📱 Fullscreen Mode #
Display the sheet in fullscreen mode:
ZebaBottomSheet.show(
context: context,
config: const ZebaBottomSheetConfig(
fullscreen: true,
),
child: const Text(
"Fullscreen Sheet",
),
);
🎛 Configuration #
Customize the bottom sheet:
const config = ZebaBottomSheetConfig(
draggable: true,
blurBackground: true,
fullscreen: false,
showDragHandle: true,
borderRadius: 24,
backgroundColor: Colors.white,
barrierColor: Colors.black45,
);
🎮 Controller Support #
Control sheet state:
final controller = ZebaBottomSheetController();
Open:
controller.open();
Close:
controller.close();
Toggle:
controller.toggle();
Example:
ZebaBottomSheet.show(
context: context,
controller: controller,
child: const Text(
"Controlled Sheet",
),
);
📂 Package Structure #
lib/
│
├── zeba_academy_bottom_sheet.dart
│
└── src/
├── bottom_sheet.dart
├── config.dart
├── controller.dart
├── drag_handle.dart
└── blur_background.dart
🧪 Testing #
Run package tests:
flutter test
Analyze the package:
flutter analyze
Validate publishing:
flutter pub publish --dry-run
🤝 Contributing #
Contributions are welcome!
Steps:
- Fork the repository.
- Create your feature branch.
git checkout -b feature/new-feature
- Commit your changes.
git commit -m "Add new feature"
- Push your branch.
git push origin feature/new-feature
- Create a Pull Request.
📜 License #
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
You are free to:
✅ Use the package
✅ Modify the source code
✅ Distribute copies
✅ Improve and contribute changes
Any distributed modifications must also remain open source under the GPL-3.0 license.
See the full license:
https://www.gnu.org/licenses/gpl-3.0.html
👨💻 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:
Connect with me on LinkedIn:
🔗 https://www.linkedin.com/in/sufyanism
🚀 Zeba Academy #
Your all-in-one learning hub! #
🚀 Explore courses and resources in coding, technology, and development at:
🔗 https://zeba.academy
🔗 https://code.zeba.academy
Zeba Academy is a learning platform dedicated to:
- Coding
- Technology
- Software Development
- Practical Projects
- Developer Resources
Explore:
➡ Main website:
https://zeba.academy
➡ Hands-on courses and resources:
https://code.zeba.academy
➡ YouTube tutorials:
https://www.youtube.com/@zeba.academy
➡ Instagram:
https://www.instagram.com/zeba.academy/
⭐ Support #
If you like this package:
⭐ Star the repository
⭐ Share it with Flutter developers
⭐ Contribute improvements
Thank you for supporting open-source development ❤️
Made with ❤️ by Zeba Academy