Skip to content

Router‑level guard

Use ConditionalGuard to protect many routes at once while excluding public paths.

final router = GoRouter(
routes: $appRoutes,
redirect: ConditionalGuard(
guard: const AuthGuard(),
excludedPaths: ['/', '/login', '/register'],
).toRedirect(),
);
  • Prefer excluding known public routes over complex include rules.
  • Use includedPatterns or wildcard strings when you need pattern matching.