π zeba_academy_navigation_stack_plus
Advanced navigation system for Flutter with full stack control, undo/redo navigation, history inspector, and smart back handling.
β¨ Features
- π Full navigation stack control
- β©οΈ Undo / Redo navigation
- π Navigation history inspector
- π Smart back handling (PopScope ready)
- β‘ Lightweight and extensible
π¦ Installation
Add this to your pubspec.yaml:
dependencies:
zeba_academy_navigation_stack_plus: ^0.0.1
Then run:
flutter pub get
π Getting Started
1. Create Controller
final navController = NavigationController();
2. Setup Navigation Stack
MaterialApp(
home: SmartBackHandler(
controller: navController,
child: NavigationStackPlus(
controller: navController,
),
),
);
3. Navigate
navController.push('/home', (context) => HomePage());
navController.push('/details', (context) => DetailsPage());
4. Undo / Redo
navController.undo();
navController.redo();
5. Pop / Back
navController.pop();
π Navigation History Inspector
NavigationHistoryInspector(controller: navController)
Displays full navigation stack with timestamps.
π§ Smart Back Handling
- Uses
PopScope(latest Flutter API) - Supports Android predictive back gesture
- Automatically manages stack-based navigation
π Project Structure
lib/
βββ zeba_academy_navigation_stack_plus.dart
βββ src/
βββ navigation_stack_plus.dart
βββ navigation_entry.dart
βββ navigation_controller.dart
βββ navigation_history.dart
βββ smart_back_handler.dart
βββ navigation_history_inspector.dart
π§ͺ Testing
Run tests using:
flutter test
π Roadmap
- π₯ Animated transitions
- π Navigation guards (auth middleware)
- π Deep linking support
- π§© Navigator 2.0 integration
- π Debug overlay panel
π License (GPL v3)
This project is licensed under the GNU General Public License v3.0.
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2026 Sufyan bin Uzayr
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
π¨βπ» 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 no-bloat hub!
π Explore cutting-edge resources in coding, tech, and development at zeba.academy and code.zeba.academy. Empower yourself with practical skills through curated directives, real-world projects, and hands-on experience. Level up your tech game today! π»β¨
Zeba Academy is a learning platform dedicated to coding, technology, and development. β‘ Visit our main site: zeba.academy β‘ Explore hands-on courses and resources at: code.zeba.academy β‘ Check out our YouTube for more tutorials: zeba.academy β‘ Follow us on Instagram: zeba.academy
Thank you for visiting! π