reactor-navigation

Manage multi-page WinUI navigation with enum-based routes and lifecycle hooks.

609|44|Updated Apr 16, 2026
One-click install
npx skills add https://github.com/microsoft/microsoft-ui-reactor --skill reactor-navigation
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: reactor-navigation
Source: https://github.com/microsoft/microsoft-ui-reactor/tree/main/plugins/reactor/skills/reactor-navigation
Command: npx skills add https://github.com/microsoft/microsoft-ui-reactor --skill reactor-navigation

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Reactor navigation provides a robust, type-safe navigation system to manage multi-page WinUI applications without boilerplate. It defines routes as enums, creates a central navigation handle, and renders the active page with NavigationHost, while coordinating back/forward stacks, transitions, caching, and deep linking.

Core Features & Use Cases

  • UseNavigation(Route.Home) to create a root handle and drive the navigation state.
  • NavigationHost(nav, route => ...) renders the matched page and handles transitions.
  • NavigationView and TabView enable sidebar and tab-based navigation patterns.
  • UseNavigationLifecycle and UseSystemBackButton provide page lifecycle hooks and system back integration.
  • DeepLinkMap enables deep linking and back-stack-aware routing across the app.
  • Enum-based routes enforce compile-time safety; methods like Navigate, GoBack, Replace, Reset manage the navigation stack.

Quick Start

Create a root navigation handle with UseNavigation(Route.Home) and render the current page with NavigationHost(nav, route => ...).

Frequently Asked Questions about reactor-navigation

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

FAQPage Schema
How do I manage multi-page navigation in WinUI without boilerplate?

Multi-page navigation in WinUI is managed by creating a root handle with UseNavigation and rendering the active page through NavigationHost, which coordinates back/forward stacks, caching, and transitions.

How do I implement type-safe routing to prevent invalid navigation paths?

Type-safe routing is implemented by defining routes as enums, enforcing compile-time safety so methods like Navigate, GoBack, Replace, and Reset only accept valid paths.

Can I handle deep linking and back-stack routing in a Reactor app?

Deep linking and back-stack routing are handled using DeepLinkMap, which configures deep linking and ensures back-stack-aware routing across the application.

Does WinUI support sidebar and tab-based navigation patterns?

WinUI supports sidebar and tab-based navigation patterns through NavigationView and TabView components, enabling flexible multi-page layouts within the NavigationHost.

How do I integrate system back button and page lifecycle hooks?

System back button integration and page lifecycle hooks are configured using UseSystemBackButton and UseNavigationLifecycle, providing control over transitions and state persistence.

What is the best way to render matched pages and handle transitions in WinUI?

Rendering matched pages and handling transitions is achieved by passing the navigation handle and a route matching function to NavigationHost, which renders the matched page and manages transitions.