navigator

Provides a reusable Navigator to decouple view models from app navigation.

Updated Jan 15, 2026
One-click install
npx skills add https://github.com/vjr2005/Challenge --skill navigator-vjr2005
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: navigator
Source: https://github.com/vjr2005/Challenge/tree/main/.claude/skills/navigator
Command: npx skills add https://github.com/vjr2005/Challenge --skill navigator-vjr2005

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Navigation within an app often becomes tightly coupled and hard to test. The Navigator skill provides a reusable navigation pattern to decouple view models from navigation implementation, enabling consistent routing across features and easier testing.

Core Features & Use Cases

  • Centralized NavigatorContract with push and modal presentation
  • Cross-feature navigation via AppNavigationRedirect to decouple features
  • Deep linking integration and test doubles for navigation flows

Quick Start

Configure a root navigation container and wire the AppNavigationRedirect to enable cross-feature routing in your app.

Frequently Asked Questions about navigator

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

FAQPage Schema
How do I decouple SwiftUI view models from navigation implementation?

You can decouple SwiftUI view models by applying a reusable Navigator pattern with a central NavigatorContract. This abstraction manages push and modal presentation flows while keeping view models independent of navigation implementation.

What is the best way to handle cross-feature navigation in SwiftUI?

Cross-feature navigation is handled via an AppNavigationRedirect mechanism. This approach decouples features by routing transitions through a centralized redirect, preventing direct dependencies between separate feature modules.

How do I test navigation flows in SwiftUI without coupling view models?

You can test navigation flows using provided test doubles for the Navigator. This allows you to verify routing logic and screen transitions in isolation without needing the actual UI layer or tightly coupling view models.

Can I integrate deep linking with a decoupled Navigator architecture?

Yes, deep linking integration is supported by the Navigator architecture. It connects deep link destinations to your navigation flows, allowing cross-feature routing and modal presentation triggers from external links.

Does this navigation pattern support both push and modal screen transitions?

Yes, the navigation pattern supports both push and modal screen transitions through its NavigatorContract. This provides consistent routing across app startup, standard screen transitions, and complex modal flows.