platform-native/deep-linking

deep linking Shipped

What this lens looks for

Confirm every significant feature point and view is deep linkable through the platform's native URL/deep-link mechanism, not just a privileged subset; flag any meaningful view reachable only by in-app navigation with no addressable entry point. On Apple, look for Universal Links plus custom URL schemes, with onOpenURL handling incoming URLs in SwiftUI and NavigationPath driving state restoration to the linked destination. On Android, look for App Links and <intent-filter> declarations wired to the Navigation component's deep-link support so links resolve to the right destination. On the web (and TypeScript), require that every view has a unique, shareable URL backed by framework routing (React Router, Next.js routing, and the like) — flag views with no distinct route or that collapse multiple states onto one non-shareable URL. On Windows, require protocol activation declared as <uap:Protocol> in Package.appxmanifest, activation handled through the Windows App SDK lifecycle via AppInstance.GetActivatedEventArgs() in App.OnLaunched, the incoming URI parsed to determine target page/state and navigated accordingly, and AppInstance.FindOrRegisterForKey() used for single-instancing on deep links. Also check that the feature's spec carries a dedicated Deep Linking section defining its URL patterns.

What its verifier checks

Every significant feature point and view is deep linkable via the platform's native URL/deep-link mechanism, with no meaningful view lacking an addressable entry point; on Apple, Universal Links plus custom URL schemes are present with onOpenURL handling and NavigationPath-based state restoration; on Android, App Links and <intent-filter> declarations are wired to Navigation-component deep links; every web/TypeScript view has a unique, shareable URL implemented through framework routing; on Windows, a <uap:Protocol> handler is declared in the manifest, activation is handled via AppInstance.GetActivatedEventArgs() in App.OnLaunched, the URI is parsed and navigated to the correct page/state, and AppInstance.FindOrRegisterForKey() provides single-instancing; the spec includes a Deep Linking section defining URL patterns.