Re: [w3c/manifest] Relationship between nestedly scoped web app manifests? (#539)

There has since been some more literature on the chromium side about this:
https://web.dev/building-multiple-pwas-on-the-same-domain/
The conclusions here are:
* Separate origins: Recommended
* Same origin, non-overlapping paths: Not recommended
* Same origin, overlapping/nested paths: Strongly not recommended

When talking to web developers, we have never found any strong use-case or reason why developers **needed** nested apps. And thankfully now that an `id` field has been spec'd, if developers end up in this situation, they can easily change their `start_url` and `scope` to get out of it the nested situation. The only place this seem possibly a requirement is in the multi-apps [1] project, and the behavior here can probably be specifically spec'd if we need to.

I wonder if it's ok to start with just specifying what the current status quo is, and hopefully it's not-great nature will dissuade developers from doing this. Would the following help with resolving this issue?

# Understanding "scope"

## Web apps that share an origin.

There can be web apps that share an origin, where their scope contains the same origin. This is not recommended due to origin-based settings like:
* Permissions
* Storage and storage quota
* User settings (e.g. font size)

## Web apps that have nested scopes.

Among the issues above, if a page resides inside the scope of multiple webapps, that is considered a **scope conflict**. This is strongly not recommended, and will cause the following possible UX changes and API behavior inconsistencies, among other possible issues:
* Installation prompting may not work for the nested app if the outer app is installed.
* User-agent UX around launching an app for a browsing context may be inconsistent or not appear.
* Badging API calls will not be able to consistently update the correct web app badge.
* Notifications may have incorrect attribution or not appear.
* Future APIs may not work at all in this configuration.

[1] https://github.com/ivansandrk/multi-apps/blob/main/explainer.md

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/manifest/issues/539#issuecomment-961508017

Received on Thursday, 4 November 2021 23:29:35 UTC