Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
rshankras avatar

Navigation Patterns

  • 3 installs
  • 591 repo stars
  • Updated July 24, 2026
  • rshankras/claude-code-apple-skills

Reference for SwiftUI navigation architecture: NavigationStack, NavigationSplitView, TabView, programmatic navigation, deep linking, and custom transitions.

About

A guide to modern SwiftUI navigation architecture covering NavigationStack, NavigationSplitView, TabView, NavigationPath, and programmatic navigation. A developer uses it when building navigation, fixing navigation bugs, or architecting app flow.

  • Covers NavigationStack, SplitView, and NavigationPath
  • Programmatic navigation and deep-linking patterns

Navigation Patterns by the numbers

  • 3 all-time installs (skills.sh)
  • +1 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #887 of 1,039 Mobile Development skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/rshankras/claude-code-apple-skills --skill navigation-patterns

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs3
repo stars591
Last updatedJuly 24, 2026
Repositoryrshankras/claude-code-apple-skills

What it does

Reference for SwiftUI navigation architecture: NavigationStack, NavigationSplitView, TabView, programmatic navigation, deep linking, and custom transitions.

Files

SKILL.mdMarkdownGitHub ↗

Navigation Patterns

Comprehensive guide for SwiftUI navigation architecture on iOS, iPadOS, and macOS. Covers the modern navigation APIs (iOS 16+/macOS 13+) with patterns for common and advanced use cases.

When This Skill Activates

  • User is building or reviewing navigation architecture
  • User has navigation-related bugs (stack not updating, back button issues, state loss)
  • User asks about NavigationStack, NavigationSplitView, TabView, or NavigationPath
  • User needs programmatic navigation (push, pop, pop-to-root)
  • User is implementing deep linking that connects to navigation
  • User asks about navigation transitions or animations
  • User is choosing between navigation approaches for their app

Decision Tree

Use this to pick the right navigation container:

What is the app structure?
│
├─ Flat sections (3-5 top-level areas)
│  └─ TabView → see tab-view.md
│
├─ Hierarchical drill-down (list → detail)
│  └─ NavigationStack → see navigation-stack.md
│
├─ Sidebar + content (macOS / iPad)
│  ├─ Two columns → NavigationSplitView → see navigation-split-view.md
│  └─ Three columns → NavigationSplitView → see navigation-split-view.md
│
└─ Combined (tabs with drill-down, sidebar with stacks)
   └─ TabView + NavigationStack per tab
      OR NavigationSplitView + NavigationStack in detail

Quick Reference

PatternContainerMin OSReference
Simple drill-downNavigationStackiOS 16navigation-stack.md
Value-based linksNavigationLink(value:)iOS 16navigation-stack.md
Programmatic push/popNavigationPathiOS 16programmatic-navigation.md
Pop to rootpath = NavigationPath()iOS 16programmatic-navigation.md
State restorationNavigationPath.CodableRepresentationiOS 16programmatic-navigation.md
Two-column layoutNavigationSplitViewiOS 16navigation-split-view.md
Three-column layoutNavigationSplitViewiOS 16navigation-split-view.md
Column visibilityNavigationSplitViewVisibilityiOS 16navigation-split-view.md
Tab barTabViewiOS 13tab-view.md
Customizable tabsTab + TabViewiOS 18tab-view.md
Sidebar tabs (iPad).tabViewStyle(.sidebarAdaptable)iOS 18tab-view.md
Zoom transition.navigationTransition(.zoom)iOS 18navigation-transitions.md
Custom transitionsNavigationTransitioniOS 18navigation-transitions.md

Process

1. Identify Navigation Needs

Read the user's code or requirements to determine:

  • App structure (flat, hierarchical, sidebar-based)
  • Target platforms (iOS only, iPad adaptive, macOS)
  • Whether programmatic navigation is needed
  • Deep linking requirements

2. Load Relevant Reference Files

Based on the need, read from this directory:

  • navigation-stack.md — NavigationStack, NavigationLink, navigationDestination
  • navigation-split-view.md — Two/three column layouts, column control, adaptive behavior
  • tab-view.md — TabView, iOS 18 customizable tabs, sidebar mode
  • programmatic-navigation.md — NavigationPath, state restoration, coordinators, pop-to-root
  • navigation-transitions.md — Custom push/pop transitions (iOS 18+)

3. Review or Recommend

Apply patterns from the reference files. Check for common mistakes:

  • [ ] Using deprecated NavigationView instead of NavigationStack/NavigationSplitView
  • [ ] Using NavigationLink(destination:) instead of NavigationLink(value:) + .navigationDestination
  • [ ] Placing NavigationStack inside NavigationSplitView detail (usually wrong)
  • [ ] Missing .navigationDestination registration for a value type
  • [ ] NavigationPath not @State or not in the right scope
  • [ ] Multiple NavigationStacks competing for the same navigation context
  • [ ] Hard-coding navigation instead of using NavigationPath for programmatic control
  • [ ] Not handling deep links through the navigation system

4. Cross-Reference

  • For deep linking URL handling, see generators/deep-linking/ skill
  • For navigation animations, see design/animation-patterns/transitions.md
  • For macOS sidebar patterns, see macos/ui-review-tahoe/swiftui-macos.md

References

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.