A simple and easy to learn declarative navigation framework for Flutter, based on Navigator 2.0.

Overview
Navi

A simple and easy to learn declarative navigation framework for Flutter, based on Navigator 2.0 (Router).


If you love Flutter, you would love declarative UI and therefore declarative navigation.

Navigator 2.0 provides a declarative navigation API. Unfortunately, it's too complex and difficult to use with a lot of boilerplate. Not only that, it requires to keep a single state to manage the whole navigation system of your application. It's not a good architecture, and definitely does not fit in large scale applications.

Navi helps you keep all the powerful of Navigator 2.0 but with a simple and easy to learn API. It helps you manage your navigation system in split and isolated domains.

Note that, imperative navigation API is also supported as an extra layer beyond the declarative API.

You might also like...

Custom Bottom navigation bar on Flutter.

Custom Bottom navigation bar on Flutter.

Intro Custom Bottom navigation bar on Flutter. The updated one Support : Null safety & Support 9 items on Tabs & Some Color, Size, Effects and font cu

Oct 8, 2021

A flutter navigation package

A flutter navigation package

Create By Me(Agalaba Ifeanyi Precious) go Navigate Navigate Like a pro from one Screen to another Using go navigate. go_Navigate provide you the abili

Oct 11, 2021

Flutter Material Design Navigation Drawer Menu

Flutter Material Design Navigation Drawer Menu

navigation_drawer_menu Flutter Material Design Navigation Drawer Menu Navigation drawer is a common UI pattern for adaptive menus. The Material Design

Dec 12, 2022

A Flutter package for easily implementing Material Design navigation transitions.

A Flutter package for easily implementing Material Design navigation transitions.

Morpheus A Flutter package for easily implementing Material Design navigation transitions. Examples Parent-child transition You can use MorpheusPageRo

Jan 7, 2023

Customized πŸš€ Bottom Navigation Bar Using Flutter 🐦

 Customized πŸš€ Bottom Navigation Bar Using Flutter 🐦

Customized πŸš€ Bottom Navigation Bar Using Flutter 🐦

Dec 7, 2022

Flutter custom BottomBar Navigation Widget

Flutter custom BottomBar Navigation Widget

bottom_bar_with_sheet πŸ’₯ Non-standard way to use more space of screens in your application πŸ’₯ 😳 Custom bottom Sheet under Bottom Navigation Bar 😳 😩

Dec 23, 2022

Persistent Bottom Navigation Bar

Persistent Bottom Navigation Bar

Persistent Bottom Navigation Bar A persistent/static bottom navigation bar for Flutter. NOTE: Those migrating from pre 2.0.0 version should check the

Dec 20, 2022

A bottom navigation bar that you can customize with the options you need, without any limits.

A bottom navigation bar that you can customize with the options you need, without any limits.

Bottom Personalized Dot Bar A bottom navigation bar that you can customize with the options you need, without any limits. You can also customize the a

Oct 20, 2022

Fluro is a Flutter routing library that adds flexible routing options like wildcards, named parameters and clear route definitions.

Fluro is a Flutter routing library that adds flexible routing options like wildcards, named parameters and clear route definitions.

English | PortuguΓͺs The brightest, hippest, coolest router for Flutter. Features Simple route navigation Function handlers (map to a function instead

Jan 4, 2023
Comments
  • Multiple path history

    Multiple path history

    Hi, and thanks for the fantastic package!

    I'm trying to implement an Instagram-like flow with IndexedStack, where each bottom bar item is a separate NaviStack.

    The issue is that the history for some of the NaviStacks can look like:

    /profile_3523/profile_111/profile_4634/ (etc. etc.)

    where _(number) is the ID of the profile.

    So I succeeded in building this incremental path for a NaviStack (and getting user Id out of it), but I'm having trouble popping this (and therefore reducing the path by one item at a time).

    Seem like context.navi.back() could be the ideal solution, but maybe there is something I'm missing?

    opened by plavunov 2
  • Wrong URL when switching to another stack

    Wrong URL when switching to another stack

    Skipping stacks scenario: wrong url went jump from book page to author page.

    The reason is that, in RouteStackState.didChangeDependencies, we are requesting to update URL inside addPostFrameCallback. When switching to the new stack, the old callback from book page still run and update with the wrong URL.

    bug 
    opened by xuan-nguyen-swe 2
  • Document compatible table to map Navi version to Flutter and Dart version.

    Document compatible table to map Navi version to Flutter and Dart version.

    The main reason is because the method RouteInformationProvider.routerReportsNewRouteInformation.

    It's changed from

    void routerReportsNewRouteInformation(RouteInformation routeInformation) {}

    to void routerReportsNewRouteInformation(RouteInformation routeInformation, {bool isNavigation = true}) {}

    then to void routerReportsNewRouteInformation(RouteInformation routeInformation, {required RouteInformationReportingType type}) {}

    documentation 
    opened by xuan-nguyen-swe 0
  • Fails to compile on latest Flutter

    Fails to compile on latest Flutter

    After all the update (Flutter 2.8.1, Dart 2.15.1)

    Error: Required named parameter 'type' must be provided. ../…/root/navi_router_delegate.dart:131 .routerReportsNewRouteInformation(newRouteInformation);

    bug 
    opened by plavunov 3
Owner
Zeno Nine
Zeno Nine
Flutter Flows made easy! A Flutter package which simplifies navigation flows with a flexible, declarative API.

Flutter Flows made easy! Usage Define a Flow State The flow state will be the state which drives the flow. Each time this state changes, a new navigat

Felix Angelov 337 Dec 31, 2022
Simple but powerfull Flutter navigation with riverpod and Navigator 2.0

Riverpod navigation If you are interested in the motivation why the package was created and a detailed description of what problems it solves, read th

pavelpz 20 Dec 13, 2022
Flutter Navigation Best Practices including adapting navigation to platform and branding techniques for navigation surfaces.

Flutter Navigation Best Practices including adapting navigation to platform and branding techniques for navigation surfaces.

Fred Grott 5 Aug 22, 2022
A Flutter package for easy implementation of curved navigation bar

curved_navigation_bar pub package A Flutter package for easy implementation of curved navigation bar. Add dependency dependencies: curved_navigation

null 556 Dec 9, 2022
Fast code and awesome design-ui for flutter navigation bar

Flutter-awesome-bottom-navigation-bar ??‍?? Fast code and awesome design-ui for flutter navigation bar ?? Getting Started # First you need to add flas

Hmida 20 Nov 22, 2022
Transparent Android system navigation bar with Flutter and FlexColorScheme package.

Sysnavbar with FlexColorScheme Transparent Android system navigation bar with Flutter and FlexColorScheme. FlexColorScheme V4 Notice If you are using

Rydmike 12 Oct 21, 2022
A Custom Extended Scaffold with Expandable and Floating Navigation Bar

Custom Extended Scaffold Custom Flutter widgets that makes Bottom Navigation Floating and can be expanded with much cleaner a

Ketan Choyal 139 Dec 10, 2022
Elegant abstraction for complete deep linking navigation in Flutter

Flutter Deep Link Navigation Provides an elegant abstraction for complete deep linking navigation in Flutter. This package only provides deep linking

Dennis Krasnov 64 Dec 27, 2022
A Flutter implementation of a customizable navigation bar with animations.

A heavily customizable bottom navigation bar with some animation modifiers.

null 1 Jun 17, 2022
flutter bottom navigation bat project

bottom_navigation A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you starte

Danushan Ravendran 3 Sep 23, 2021