flutter-navigation

Implement imperative and declarative navigation patterns in Flutter apps.

6|2|Updated Aug 14, 2025
One-click install
npx skills add https://github.com/Im5tu/claude --skill flutter-navigation-im5tu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: flutter-navigation
Source: https://github.com/Im5tu/claude/tree/main/skills/flutter-navigation
Command: npx skills add https://github.com/Im5tu/claude --skill flutter-navigation-im5tu

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill provides a structured, practical guide for implementing navigation and routing in Flutter apps.

Core Features & Use Cases

  • Imperative navigation: use Navigator API for straightforward screen transitions.
  • Declarative routing: adopt go_router for deep linking and URL-based navigation.
  • Cross-platform routing: coordinate navigation patterns between mobile and web, including browser history integration.
  • Use Case: when building an app with a Home screen and a Details screen, implement data passing and route guards to manage authentication flows.

Quick Start

Ask the AI to scaffold a minimal Flutter app with a Home and Details screen, wired up using both Navigator.push and go_router patterns.

Frequently Asked Questions about flutter-navigation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement deep linking in Flutter for mobile and web apps?

Implement deep linking in Flutter by adopting declarative routing with go_router. This approach manages URL-based navigation and integrates browser history, ensuring predictable navigation flows across both mobile and web platforms without mandatory external libraries.

What is the difference between imperative and declarative routing in Flutter?

Imperative routing in Flutter uses the Navigator API for straightforward screen transitions via push and pop commands. Declarative routing utilizes go_router to define navigation flows through URL-based paths, which is essential for deep linking and web browser history integration.

Can I use go_router for cross-platform navigation without external dependencies?

Yes, you can implement cross-platform navigation patterns using go_router or the built-in Navigator API. This allows you to coordinate mobile and web routing, including browser history integration and deep linking, without requiring additional mandatory external libraries.

What's the best way to pass data between screens and manage authentication flows in Flutter?

The best way to pass data and manage authentication in Flutter is by implementing route guards and data passing within your navigation setup. Using declarative routing patterns allows you to protect screens and securely pass data between Home and Details screens.

Why does my Flutter web app lose browser history state during navigation?

Browser history state is lost when using imperative Navigator API calls without URL synchronization. To maintain browser history integration during Flutter web navigation, switch to declarative routing with go_router to ensure URL-based paths correctly map to screen transitions.