FLUTTER ECOSYSTEM

go_router

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

go_router cover
Latest version
18.0.2
30-day downloads
4.3M
Likes
5.8K
Pub points
150

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Overview

go_router is a declarative routing solution for Flutter that leverages Navigation 2.0 to enable deep linking, data-driven route handling, and seamless navigation across platforms. Built by the Flutter team, it simplifies complex routing logic with a clean, expressive syntax. The router supports dynamic routes, route guards, and nested navigation, making it ideal for scalable applications. It integrates smoothly with Flutter’s ecosystem and provides robust tools for managing state during navigation transitions.

Use cases
  • Deep linking in mobile and web apps
  • Dynamic route configuration
  • Nested navigation structures
  • Secure route access with guards
  • Stateful navigation with query parameters
Key features
  • Declarative route definitions
  • Support for deep linking
  • Data-driven route matching
  • Route guards and redirects
  • Nested route hierarchies
Suitable for
  • Large-scale Flutter applications
  • Apps requiring deep linking
  • Developers seeking modern routing patterns
  • Projects needing secure route access control
  • Cross-platform apps targeting multiple devices
Considerations
  • Requires understanding of Navigation 2.0
  • May introduce complexity in simple apps
  • Needs careful state management during navigation
  • Limited community plugins compared to older routers
  • Migration from legacy routing may require refactoring
Supported platformsAndroidiOSWebmacOSWindowsLinux

Install package

flutter pub add go_router

Categories

Dependencies

Dependency list 5 items

Source repository

Related projects

Rankings