← Retour aux actualités

Août 13, 2026

Chromium’s New PWA Scope Experiment Could Fix Awkward App-to-Web Navigation

Blink contributors want to prototype finer web app manifest scope controls, potentially giving installed PWAs a cleaner boundary between app routes and ordinary website pages.
Chromium’s New PWA Scope Experiment Could Fix Awkward App-to-Web Navigation

A PWA can feel convincingly like an app until one innocent link exposes the seam. Tap Help, account settings, a marketing page, or a legal notice, and the installed window may continue treating that destination as part of the application simply because its URL sits beneath the same broad path. The code still works, but the product boundary suddenly feels vague.

Chromium contributors now want to investigate a more precise answer. An Intent to Prototype posted to Blink’s development list on August 12 proposes web app manifest scope filtering. Microsoft engineers are listed as contacts, and the announcement is specifically about prototyping—not shipping—a mechanism for distinguishing which pages within a manifest’s general scope should be treated as part of an installed web app.

That qualification matters. There is no stable Chrome capability to adopt today, no confirmed release milestone, and no reason to add speculative fields to production manifests. What has changed is that a long-running PWA design problem has moved from standards discussion into an explicit browser-engine exploration.

The current boundary is simple—and often too simple

A web app manifest’s scope helps the browser decide which navigations belong to the installed application. Today, that boundary is fundamentally based on a URL prefix. If an app uses a scope such as a top-level application directory, routes beneath that prefix are treated as being within its navigation scope.

That model is predictable and inexpensive to implement. It also assumes that a website’s URL hierarchy maps neatly onto its product architecture. Real services are rarely so tidy. A single origin may contain the signed-in product, documentation, support, pricing, authentication, status information, and public content. Some of those destinations should feel like screens inside the app. Others make more sense as normal browser pages with a visible address, familiar navigation controls, and an obvious relationship to the wider web.

The problem is not new. An open Web Application Manifest issue describes the need to separate “app” URLs from ordinary pages that happen to sit inside the same scope. Help pages are the clearest example: a developer may want them available on the same origin without having the installed app absorb them into its window or presenting app-specific launch treatment on those pages.

Scope filtering is an attempt to make that boundary more expressive. The fresh Blink notice does not establish final syntax or behavior, so developers should not infer a particular manifest member, matching language, or exclusion format yet. The important signal is the problem Chromium intends to prototype: a broad URL prefix may no longer need to be the last word on whether a page belongs inside the app experience.

Why this is more than navigation polish

Installed web apps ask users to accept a useful illusion. The experience arrives from the open web, yet it can launch from an icon, occupy a standalone window, receive links, and behave like a resident application. That illusion succeeds when the boundary is consistent. It weakens when an app window unexpectedly becomes a documentation browser or when a public webpage looks as though it belongs to an installed product.

A finer boundary could improve several parts of the experience if the experiment advances:

  • Confiance : Pages intended for ordinary browsing could retain browser context instead of inheriting an app-like presentation that obscures where the user has gone.
  • Link handling: Browsers could potentially make more accurate decisions about which destinations should open in an installed app and which should remain in a tab, subject to the final design and user preferences.
  • Install and launch cues: Sites could avoid presenting app-oriented treatment on routes that are technically nearby but conceptually outside the product.
  • Product architecture: Teams would have less pressure to reorganize URLs or split content across origins merely to obtain the desired installed-app behavior.
  • App-like UX: Standalone windows could remain focused on application workflows while support, policy, and public content stay recognizably part of the web.

None of those outcomes requires turning a PWA into a closed native package. In fact, the proposal could reinforce an open-web advantage: one origin can serve many kinds of experiences while the manifest communicates which routes form the installed product.

Qui devrait s’en soucier maintenant

Developers maintaining large PWAs should care because URL design becomes expensive to change once deep links, authentication callbacks, analytics, and customer bookmarks depend on it. A future filtering mechanism could offer more flexibility, but only if teams understand which routes currently depend on in-scope treatment.

Product leaders should care because this is fundamentally an ownership question. Does a pricing page belong inside the app? Should support open with browser controls? What happens when a user follows a shared link to a route that is excluded from the installed experience? Those are product decisions disguised as manifest configuration.

Founders and distribution partners should care because installable web apps compete partly on low-friction access. A rough transition between the installed product and the wider site can make a PWA feel less deliberate than a native app. Better boundaries will not solve every platform gap, but they can remove a recurring reminder that the installed experience was assembled around a coarse URL rule.

There is also a practical distinction worth protecting: manifest navigation scope is not the same thing as service worker scope or caching strategy. Filtering which pages are treated as part of the installed app would not automatically determine what works offline, what gets cached, or which requests a service worker controls. Teams will still need to design those layers independently.

What teams can do without betting on an experiment

No production implementation work is justified yet, but an architecture audit is useful. Map the routes beneath the current manifest scope and classify them as core app screens, transitional flows, or ordinary web content. Test what happens when those links are opened from an installed window, an external webpage, and the operating system. Record where users lose context or where browser and app behavior diverge.

That inventory creates value even if the proposal changes. It can reveal accidental scope choices, brittle authentication flows, and routes that depend on browser UI for trust. It also gives developers concrete cases to bring to the standards and Chromium discussions instead of treating scope filtering as an abstract manifest feature.

Que surveille IndApp ensuite

The next meaningful signal will be a public prototype with enough detail to answer the questions the announcement leaves open. IndApp will watch for the proposed manifest shape, the URL-matching model, interaction with link capturing and install surfaces, fallback behavior in browsers that ignore the new data, and explicit positions from WebKit and Mozilla.

Security deserves equal attention. A filter must not let an installed app make misleading claims over unrelated pages, and users must remain in control of whether eligible links launch an application. Compatibility also matters: the web cannot depend on every manifest consumer implementing a new routing language at once.

For now, the market impact is directional but real. Chromium is examining whether an installed web app can describe its product boundary with more precision than a folder prefix. If that work survives prototyping and standardization, PWAs could gain something deceptively valuable: a clearer answer to where the app ends and the web begins.

Pour aller plus loin