Demo Videos
alghwalbi_easy_router
Experience effortless navigation in your Flutter apps across platforms with alghwalbi_easy_router. Seamlessly adapts to each environment, mirroring web routes in the browser's search bar on the web, while integrating with default mobile behavior. Say goodbye to platform inconsistencies and hello to a consistent user experience. Simplify routing with alghwalbi_easy_router today!
Installation
To install alghwalbi_easy_router from pub.dev, click here.
Usage
-
Define Routes:
void main() { WidgetsFlutterBinding.ensureInitialized(); EasyRouter.removeHashFromUrl(); EasyRouter.allAppRoutes = { '/': (context, state, data) { return EasyRouter.routeInfo( child: const MainPage(), title: 'Main Page', key: const ValueKey('Easy Route main')); }, '/login': (context, state, data) => EasyRouter.routeInfo( child: const LoginPage(), title: 'Login Page', key: const ValueKey('Easy Route Login'), ), '/signup': (context, state, data) => EasyRouter.routeInfo( child: const SignUpPage(), title: 'Signup Page', key: const ValueKey('Easy Route Signup'), ), // Add more routes as needed }; runApp(const MyApp()); }
-
Use Material App Router:
MaterialApp.router( routerDelegate: EasyRouter.easyRouterDelegate, routeInformationParser: EasyRouter.getEasyRouterParser, backButtonDispatcher: EasyRouter.getEasyRouterBackButtonDispatcher, debugShowCheckedModeBanner: false, ... )
-
Remove Hash from URL:
void main() { WidgetsFlutterBinding.ensureInitialized(); EasyRouter.removeHashFromUrl(); ... }
-
Navigate between Pages:
EasyRouter.go( context: context, route: '/login', // Provide your destination route replaceRoute: true, // Optional data: {}, // Optional: Provide JSON data to send from page to another invalidRouterDialog: // Optional: Provide your custom dynamic Function(BuildContext)? or dialog when the route is not found )
-
Back Navigation:
EasyRouter.back(context)
Optionally, you can specify the route to go to if back navigation fails:
EasyRouter.back(context, popFailedRoute: '/')
For more detailed information and usage examples, refer to the official pub.dev page.
Feel free to explore the capabilities of alghwalbi_easy_router and simplify navigation within your Flutter apps! If you encounter any issues or have questions, don't hesitate to reach out. Happy coding!