navigation-3

Migrate Android Navigation 2 string routes to typed NavKey models with Compose.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/soygabimoreno/Los-ANDROIDES --skill navigation-3-soygabimoreno
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: navigation-3
Source: https://github.com/soygabimoreno/Los-ANDROIDES/tree/main/.agents/skills/navigation-3
Command: npx skills add https://github.com/soygabimoreno/Los-ANDROIDES --skill navigation-3-soygabimoreno

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill helps you migrate and implement Jetpack Navigation 3 in a Compose app without getting lost in route modeling, back stack control, scenes (dialogs/bottom sheets/adaptive layouts), and deep-link behavior.

Core Features & Use Cases

  • Navigation 2 → Navigation 3 migration: update dependencies, replace string routes with typed NavKeys, move destinations into an entryProvider, and swap NavHost for NavDisplay.
  • Type-safe navigation patterns: define @Serializable route objects/classes and navigate by pushing strongly-typed keys onto back stacks.
  • Advanced navigation behaviors: implement deep links, multiple backstacks (e.g., bottom tabs), conditional navigation (logged-in vs anonymous flows), and return results from flows using event- or state-based approaches.

Quick Start

Use the navigation-3 skill to generate a migration plan for your app by mapping your current NavController routes to NavKey types and rewriting your NavHost destinations into an entryProvider with NavDisplay.

Frequently Asked Questions about navigation-3

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

FAQPage Schema
How do I migrate from Navigation 2 to Navigation 3 in Jetpack Compose?

To migrate from Navigation 2 to Navigation 3, replace string routes with typed @Serializable NavKey models, move destinations into an entryProvider, and swap NavHost for NavDisplay to manage explicit back stacks and Compose entry resolution.

How do I implement multiple backstacks for bottom tabs in Jetpack Compose navigation?

Implement multiple backstacks for bottom tab UIs by redesigning navigation around explicit back stack management, pushing strongly-typed NavKey objects onto specific stacks to preserve state across tab switches in Compose.

What are scenes in Android Jetpack Compose navigation and how do I use them?

Scenes in Jetpack Compose navigation handle specialized UI displays like dialogs, bottom sheets, and two-pane list-detail layouts, managed through scene-based strategies integrated with an entryProvider-driven NavDisplay for NavEntry resolution.

How do I handle deep links with typed NavKey routes in Android Compose navigation?

Handle deep links by parsing incoming URIs into typed @Serializable NavKey implementations, which are then pushed onto the explicit back stack to resolve the corresponding Compose destination via the entryProvider.

How do I return results between destinations using Android Compose navigation?

Return results between navigation destinations by applying event- or state-based approaches within your navigation flows, passing data back through the explicit back stack management system in Compose.

Can I use conditional navigation for auth flows with Navigation 3 in Compose?

Yes, conditional navigation for auth or onboarding flows is supported by checking user states and pushing specific typed NavKey objects onto the back stack to route between logged-in and anonymous Compose destinations.