swiftui-navigation

Centralize SwiftUI navigation state with Hashable route enums and router-based deep links.

Updated May 6, 2026
One-click install
npx skills add https://github.com/Roy-wonji/claude-config --skill swiftui-navigation-roy-wonji
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: swiftui-navigation
Source: https://github.com/Roy-wonji/claude-config/tree/main/skills/swift-ios-skills/skills/swiftui-navigation
Command: npx skills add https://github.com/Roy-wonji/claude-config --skill swiftui-navigation-roy-wonji

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill prevents fragile, hard-to-maintain navigation flows in SwiftUI by providing reliable patterns for routing between screens, presenting modals, and handling external deep links.

Core Features & Use Cases

  • NavigationStack + NavigationPath: Type-safe push navigation with programmatic routing via a Hashable route enum.
  • NavigationSplitView & multi-column layouts: Sidebar-detail architectures that fall back to stack behavior on smaller devices.
  • Sheets, tabs, and deep links: Enum-driven sheet routing, independent per-tab navigation history with TabView, and centralized Universal Links / custom URL scheme / Handoff handling through a router.

Quick Start

Ask an AI to generate a router-based navigation implementation using NavigationStack (per tab), enum-driven sheets, and centralized deep-link handling for Universal Links and custom URL schemes.

Frequently Asked Questions about swiftui-navigation

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

FAQPage Schema
How do I handle deep links and Universal Links in a SwiftUI app?▼

Handle deep links and Universal Links in SwiftUI by centralizing URL parsing within a router and integrating it with the onOpenURL and onContinueUserActivity modifiers to drive navigation state.

What is the best way to manage NavigationStack routing with type-safe paths in SwiftUI?▼

NavigationStack routing is managed by using a Hashable route enum to map destinations, centralizing navigation state, and driving programmatic push navigation through a dedicated router object.

How do I present sheets programmatically based on enum cases in SwiftUI?▼

Present sheets programmatically in SwiftUI by using enum-driven sheet routing, where a router owns the sheet state and maps specific enum cases to their corresponding view destinations.

Can I maintain independent navigation histories for each tab using NavigationStack in SwiftUI?▼

You can maintain independent navigation histories by integrating NavigationStack within each TabView section, allowing a router to manage isolated navigation states and stack paths per tab.

Does NavigationSplitView fall back to stack navigation on smaller iOS devices?▼

NavigationSplitView automatically falls back to stack behavior on smaller iOS devices, allowing your multi-column sidebar-detail layouts to adapt seamlessly while using centralized routing.

Why does my SwiftUI navigation flow become brittle when scaling across multiple screens?▼

SwiftUI navigation becomes brittle when state is scattered; centralizing route-to-view mapping with a router and Hashable enums solves this by creating reliable, programmatic screen routing.