large Flutter Favorite logosmall Flutter Favorite logo

go_router 6.0.5 icon indicating copy to clipboard operation
go_router: ^6.0.5 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.

Roadmap #

See the GitHub project for a prioritized list of feature requests and known issues.

2367
likes
140
pub points
99%
popularity

Publisher

verified publisher iconflutter.dev

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

Repository (GitHub)
View/report issues
Contributing

Documentation

API reference

License

Icon for licenses.BSD-3-Clause (LICENSE)

Dependencies

collection, flutter, flutter_web_plugins, logging, meta

More

Packages that depend on go_router