go_router 14.6.0 copy "go_router: ^14.6.0" to clipboard
go_router: ^14.6.0 copied to clipboard

A declarative router for Flutter based on Navigation 2 supporting deep linking, data-driven routes and more

go_router #

A declarative routing package for Flutter that uses the Router API to provide a convenient, url-based API for navigating between different screens. You can define URL patterns, navigate using a URL, handle deep links, and a number of other navigation-related scenarios.

Features #

GoRouter has a number of features to make navigation straightforward:

  • Parsing path and query parameters using a template syntax (for example, "user/:id')
  • Displaying multiple screens for a destination (sub-routes)
  • Redirection support - you can re-route the user to a different URL based on application state, for example to a sign-in when the user is not authenticated
  • Support for multiple Navigators via ShellRoute - you can display an inner Navigator that displays its own pages based on the matched route. For example, to display a BottomNavigationBar that stays visible at the bottom of the screen
  • Support for both Material and Cupertino apps
  • Backwards-compatibility with Navigator API

Documentation #

See the API documentation for details on the following topics:

Migration Guides #

Changelog #

See the Changelog for a list of new features and breaking changes.

Triage #

See the GitHub issues for all Go Router issues.

The project follows the same priority system as flutter framework. P0 P1 P2 P3

Package PRs

4867
likes
150
pub points
100%
popularity

Publisher

verified publisherflutter.dev

A declarative router for Flutter based on Navigation 2 supporting deep linking, data-driven routes and more

Repository (GitHub)
View/report issues
Contributing

Topics

#deep-linking #go-router #navigation

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

collection, flutter, flutter_web_plugins, logging, meta

More

Packages that depend on go_router