Learn to move users between screens in a Flutter app with confidence — from the Navigator stack and named routes to the modern go_router package. You will walk away able to build multi-screen apps that pass data forward, return results, use bottom-tab navigation with nested stacks, and open to the right screen from a deep link.
Watch the free preview
Screens as a stack — push and pop — free to watch, no account needed.
What you'll learn
- Build multi-screen Flutter apps that move users between screens reliably
- Navigate with Navigator.push and pop and reason about the route stack
- Define named routes and pass arguments and return results between screens
- Route declaratively with go_router, including path parameters and redirects
- Implement bottom-tab navigation with nested stacks and handle a basic deep link
Syllabus
The Navigator Stack — Push and Pop
Screens as a stack — push and popFree preview
Passing data forward with MaterialPageRoute
Named Routes, Arguments and Results
Named routes and the routes table
Passing arguments and returning results
Declarative Routing with go_router
Introducing go_router
Path parameters, queries and redirects
Nested Navigation, Tabs and Deep Links
Bottom navigation with nested stacks
Deep links — opening straight to a screen
Lab — 10 Exercises & Solutions
Exercises 1–5
Exercises 6–10