Use a `GetMiddleware` guard and attach it to every protected `GetPage` in `AppPages`. Keep the login route public, otherwise a redirect to login can recurse. ```dart // app_routes.dart abstract class Routes { static const login = '/login'; static const home = '/home'; static const profile = '/profile'; } class AuthMiddleware extends GetMiddleware { AuthMiddleware(this.authService); final AuthService authService; @override int? get priority => 1; @override RouteSettings? redirect(String? route...
Scanned 9/5/2026
Install to Claude Code
npx -y skills add HoangNguyen0403/agent-skills-standard --skill flutter-getx-navigation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Flutter Getx Navigation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/hoangnguyen0403-flutter-getx-navigation-agent-skills-standard)More formats (shields.io, HTML) on the badges page.
Use a `GetMiddleware` guard and attach it to every protected `GetPage` in `AppPages`. Keep the login route public, otherwise a redirect to login can recurse.
```dart
// app_routes.dart
abstract class Routes {
static const login = '/login';
static const home = '/home';
static const profile = '/profile';
}
class AuthMiddleware extends GetMiddleware {
AuthMiddleware(this.authService);
final AuthService authService;
@override
int? get priority => 1;
@override
RouteSettings? redirect(String? route) {
if (authService.isLoggedIn) {
return null; // Allow the requested route.
}
return const RouteSettings(name: Routes.login);
}
}
class AppPages {
static final _authMiddleware = AuthMiddleware(Get.find<AuthService>());
static final routes = <GetPage>[
GetPage(
name: Routes.login,
page: () => const LoginView(),
),
GetPage(
name: Routes.home,
page: () => const HomeView(),
middlewares: [_authMiddleware],
),
GetPage(
name: Routes.profile,
page: () => const ProfileView(),
middlewares: [_authMiddleware],
),
];
}
```
Register `AuthService` before `GetMaterialApp` builds the route table (for example, with `Get.put(AuthService())` in app startup). For a large application, define a small helper that supplies the same middleware to all protected `GetPage`s; do not use `Navigator.of(context)` for this redirect.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!