Navigation patterns#
AppShell assembles a few building blocks —
authored pages, data-bound providers, and an optional workspace rail — into the
navigation shape your app needs. This is a catalog of the common shapes: find the
one that matches what you’re building, then copy its worked example.
Every pattern is authored with the same small API, so you can start simple and grow: a flat list of pages becomes a grouped one becomes a multi-section app with a rail, without rewriting what you have.
A flat sidebar of top-level pages — the everyday dashboard. Use when you have a handful of destinations and no sub-grouping.
Pages chunked into labeled sections — the Settings window. Use when the destinations fall into clear categories.
A list drives a detail view — the email inbox. Use when the sidebar is a list of records and the content shows one at a time.
A hierarchy drives a detail view — the file explorer. Use when records nest under parents.
Multiple sections behind an icon rail — a mail + calendar suite. Use when the app has distinct areas, each with its own sidebar.
A bespoke sidebar you build by hand — a filter panel. The escape hatch when none of the providers fit.
See also
For the full AppShell API — every method, property, and option — see the
AppShell widget guide. For lower-level page
switching without a sidebar, see PageStack and
Tabs.