swiftui-navigation

Implement SwiftUI navigation with type-safe routes, sheets, and deep links.

Updated May 10, 2026
One-click install
npx skills add https://github.com/FelixRauch/medat-figuren --skill swiftui-navigation-felixrauch
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: swiftui-navigation
Source: https://github.com/FelixRauch/medat-figuren/tree/main/.agents/skills/swiftui-navigation
Command: npx skills add https://github.com/FelixRauch/medat-figuren --skill swiftui-navigation-felixrauch

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

It solves the complexity of implementing correct, scalable SwiftUI navigation flows across push navigation, split-view layouts, modal sheets, tabs, and deep links.

Core Features & Use Cases

  • NavigationStack push routing: Implement type-safe programmatic navigation using a NavigationPath and route mappings via .navigationDestination(for:).
  • NavigationSplitView for iPad layouts: Provide sidebar-detail navigation while keeping stack behavior on smaller devices.
  • Centralized sheet routing: Present modals using a SheetDestination enum with sheet(item:) (including iOS 26 presentation sizing and dismissal confirmation).
  • Tab-based architecture: Build scalable TabView setups with independent NavigationStack per tab and typed selection using Tab(value:).
  • Deep linking support: Route universal links, custom URL schemes, and Handoff via a centralized router entry point and SwiftUI openURL / userActivity handlers.

Quick Start

Use the swiftui-navigation skill to design a router-driven SwiftUI navigation system for an app that needs push navigation, independent per-tab history, modal sheets, and universal link routing.

Frequently Asked Questions about swiftui-navigation

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

FAQPage Schema
How do I implement type-safe programmatic navigation in SwiftUI using NavigationStack?▼

Type-safe programmatic navigation in SwiftUI uses a Hashable route enum and centralized .navigationDestination(for:) mappings. A router-owned NavigationPath manages the stack, allowing you to push typed route values instead of relying on implicit value-based navigation links.

What's the best way to handle deep linking and universal links in a SwiftUI app?▼

Deep linking in SwiftUI is handled via a centralized router entry point using .onOpenURL and onContinueUserActivity. This router parses universal links and custom URL schemes, routing them to the correct screens with fallback to system behavior.

Can I manage modal sheet presentation and dismissal state centrally in SwiftUI?▼

Modal sheet presentation is managed centrally using a SheetDestination enum and the sheet(item:) modifier. The router owns the sheet state, allowing type-safe sheet presentation, including iOS 26 presentation sizing and dismissal confirmation.

How do I build a SwiftUI TabView with independent navigation history per tab?▼

Build scalable TabView setups by embedding an independent NavigationStack within each tab. Use typed selection with Tab(value:) to ensure each tab maintains its own navigation path and routing history.

Does this approach support NavigationSplitView for iPad master-detail layouts?▼

Yes, NavigationSplitView is supported to provide sidebar-detail navigation for iPad layouts. It maintains standard stack behavior when adapting to smaller devices like iPhone.

Why does my SwiftUI navigation routing break when handling external URLs?▼

External URL routing breaks without a centralized router entry point. Implement deep-link handling via .onOpenURL and onContinueUserActivity with a defined fallback to system behavior to ensure links reach the correct screens.