Agent-skills-standard flutter-navigation

Implement navigation patterns with go_router, deep linking, and named routes. Use when building navigation, deep linking, or named routes in Flutter. (triggers: **/*_route.dart, **/*_router.dart, **/main.dart, Navigator, GoRouter, routes, deep link, go_router, AutoRoute)

install
source · Clone the upstream repo
git clone https://github.com/HoangNguyen0403/agent-skills-standard
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/HoangNguyen0403/agent-skills-standard "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/flutter/flutter-navigation" ~/.claude/skills/hoangnguyen0403-agent-skills-standard-flutter-navigation && rm -rf "$T"
manifest: skills/flutter/flutter-navigation/SKILL.md
source content

Flutter Navigation

Priority: P1 (OPERATIONAL)

Implementation Workflow

  1. Choose router — Use
    go_router
    for modern, declarative routing.
  2. Define routes — Use constants or code generation for route paths; never hardcode strings.
  3. Configure deep links — Set up
    AndroidManifest.xml
    and
    Info.plist
    for URL schemes.
  4. Validate parameters — Check parameters in
    redirect
    logic before navigation.
  5. Preserve tab state — Use
    StatefulShellRoute
    or
    IndexedStack
    for bottom navigation.

Route Configuration Example

See implementation examples for GoRouter configuration with parameter validation and redirects.

Routing Patterns & Examples

Anti-Patterns

  • No Manual URL Parsing: Use
    go_router
    built-in parsing instead of
    Uri.parse(url)
  • No Manual Tab State Management: Use
    IndexedStack
    or
    StatefulShellRoute
    to preserve state
  • No Unvalidated Deep Link IDs: Always check existence in
    redirect
  • No Hardcoded Route Strings: Use constants (e.g.,
    Routes.orders
    ) or code-gen instead of
    '/orders'

Related Topics

flutter-design-system | flutter-notifications | mobile-ux-core