This covers the modern SwiftUI navigation APIs you actually need: NavigationStack with type-safe routing, NavigationSplitView for iPad layouts, sheet presentation with proper dismiss handling, and TabView architecture with per-tab navigation stacks. The router pattern section is especially useful if you're tired of prop-drilling navigation state through your view hierarchy. It includes iOS 26 additions like search tabs and tab bar minimization, plus practical deep linking setup with universal links and custom URL schemes. The common mistakes section will save you from fighting SwiftUI's navigation quirks, and the manual HStack split pattern is there for when NavigationSplitView doesn't fit your layout needs.

skills.sh installs
4.6K
GitHub stars
1.3K
last updated
Aug 21, 2026

Install

$ npx -y skills add dpearson2699/swift-ios-skills --skill swiftui-navigation --agent claude-code

Installs into .claude/skills of the current project.

Files

SwiftUI Navigation

Navigation patterns for SwiftUI apps targeting iOS 26+ with Swift 6.3. Covers push navigation, multi-column layouts, sheet presentation, tab architecture, and deep linking. Patterns are backward-compatible to iOS 17 unless noted.

Contents

NavigationStack (Push Navigation)

Use NavigationStack with a typed [Route] binding for programmatic push navigation. Define routes as a Hashable enum and map them with .navigationDestination(for:); this keeps the path compile-time checked. Use NavigationPath only when one stack must hold heterogeneous route value types.

enum Route: Hashable {
    case item(id: Item.ID)
}

struct ContentView: View {
    @State private var path: [Route] = []
    let items: [Item]

Sponsors

Details

Repository
github.com/dpearson2699/swift-ios-skills
Categories
Mobile Development, Office & Documents
First seen
Apr 16, 2026

More from dpearson2699/swift-ios-skills

All 98
1dpearson2699 avatarswiftui-layout-componentsdpearson2699/swift-ios-skillsBuild SwiftUI layouts using stacks, grids, lists, scroll views, forms, and controls. Covers VStack/HStack/ZStack, LazyVGrid/LazyHGrid, List with sections and sw4.4Kskills.sh installs
2dpearson2699 avatarswiftui-liquid-glassdpearson2699/swift-ios-skillsImplement, review, or improve SwiftUI Liquid Glass effects for iOS 26+. Covers glassEffect modifier, GlassEffectContainer, glass button styles, glass toolbar/ta4.3Kskills.sh installs
3dpearson2699 avatarswiftui-uikit-interopdpearson2699/swift-ios-skillsBridges UIKit and SwiftUI with UIViewRepresentable, UIViewControllerRepresentable, UIHostingController, UIHostingConfiguration, coordinator delegates, and UIKit4.2Kskills.sh installs
4dpearson2699 avatarswiftui-gesturesdpearson2699/swift-ios-skillsImplement, review, or improve SwiftUI gesture handling. Use when adding tap, long press, drag, magnify, or rotate gestures, composing gestures with simultaneous4.2Kskills.sh installs
5dpearson2699 avatarswiftui-webkitdpearson2699/swift-ios-skillsEmbeds and controls web content in SwiftUI with WebKit for SwiftUI, including WebView, WebPage, navigation policies, JavaScript execution, observable page state3.4Kskills.sh installs
6dpearson2699 avatarapp-store-optimizationdpearson2699/swift-ios-skillsOptimize App Store product pages for search visibility and conversion. Use for App Store Optimization (ASO), keyword research, app name/subtitle/keyword-field s3.1Kskills.sh installs