๐Ÿš€ 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! ๐Ÿ™Œ