-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Web Install API - Same Origin #888
Comments
I got a few questions:
|
Hi @diekus we discussed briefly in today's TAG session and someone from TAG will be at the breakout session you're holding at TPAC next week so we hope to progress then. |
Hi @diekus - thanks for this and thanks also for the TPAC session on this topic which was really interesting! Some initial feedback form our TAG breakout today: We're concerned about potential abuse of the "Web app installation from associated domain" use case, especially in a world where installed webapps might be auto-granted additional permissions. We're generally happy with the same-origin-bound use case of We think the expected venue should probably be Web Applications working group (after this graduates from WICG) and/or the WHATWG HTML workstream. |
Hi @diekus any update on this from your PoV? Thanks! |
Hola TAG. I've missed you ✨. So getting back to business. We've completely reworked the shape of the API. Both explainers (for same and cross-origin) have been updated and I am pleased to inform you of the following: (cc @iVanlIsh)
(cc @torgo)
We've got several store partners in line to try it, including 3P developers that are very excited about the possibilities to democratise application distribution! I whole heartly agree with you that WebApps WG is the right place for this work 💖. |
Hi @diekus, after reading your comment both @plinss were still confused about several aspects of this API: Wrt
Wrt installing multiple PWAs from the same origin and When separating the API into a same-origin and a cross-origin version, it’s important that the separation is "clean", i.e. that the same origin version can be implemented independently and no parts of it should require the cross-origin version of the API. With that in mind:
Also, given the text in the explainer, it is still unclear to use what the author flow is for e.g. having a website that includes multiple apps ( We also don’t quite understand the signature of Also please note that TAG principle around preferring a dictionary for optional arguments. |
Thank you for your patience. I will try to answer your doubts to the best of my knowledge. Wrt When referring to I believe this was more relevant when PWAs started in mobile and were mostly a run-down, "lite" version of the native/platform-specific counterpart. Similar behaviour is present in Safari when it adds a "Smart App Banner" prompting that there is a related application on the App Store. I am personally not a fan of these behaviours, nonetheless, I believe if a developer prefers to have their app installed from the platform's app-repo, and explicitly adds the Now, I also believe this is up to the implementer if they want to honour that request the developer is doing. Safari does this with the meta tag I put this in the explainer in the section of "Relation with other web APIs" as I think the installation flow could be different if these fields are present in the manifest file. Again, implementors could decide to ignore these or to implement different UX (like showing the install prompt with an option for the end user to choose where they would like the app to be installed from, for example). These are orthogonal to the API itself, and same-origin use cases are completely independent of the cross-origin ones. Wrt same-origin parameters and The parameters are there as a way to pass more information if the developer needed. For example, with the There is currently an ongoing discussion about the requirement of Wrt to optional parameters I will update the explainer to reflect that it is a dictionary, not an object as it is currently stated. (and thanks for the heads up!) |
Hi @diekus we discussed on today's call. One thing we are not clear on is the need for the separate ID in the case of same origin installation. Are there other cases, not related to app store cases, that would require a separate ID (separate from the URL to the webapp itself)? Otherwise it seems like this could be simplified (and thereby reduce developer complexity) by removing the need for a separate ID? |
Hola @torgo! Let me try to elaborate on the The idea of an
We've tried to (and I wanted to) enable a no params install call, but thinking about upgradability and installed content management it makes sense to have this I see it more of a futureproofing/upgradability good practice... does this make sense, or do you have any considerations or comments we might have not thought of? |
There was a previous idea that in the absence of an The upside is that the developer gets to call considering how much web dev gets done by copy and pasting code samples from stackoverflow or MDN web docs I think the developer simplicity of not requiring an arbitrary id will come and bite back in the future when users have N of the same apps installed because they were installed from different pages, even though they are related/the same app. |
@torgo Here is a public doc I made in the past that describes the edge cases that are solved by always requiring an id: https://bit.ly/navigator-install-and-manifest-identity Main problems briefly:
|
Hi Diego - thanks for sending this our way. We're happy to see this move forward and would like to review again when you have a specification in the Web Apps working group. We're going to close this for now with a satisfied label. Please ping us to re-open when you want a follow-up review. |
Hola TAG!
I'm requesting an early TAG review of the Web Install API.
The Web Install API allows a web site to install a web app (same domain). This functionality allows the creation of web based catalogues that can install PWAs directly from the web and into multiple platforms.
Further details:
You should also know that...
there's plenty of positive developer feedback for an API like this one!
We'd prefer the TAG provide feedback as (please delete all but the desired option):
🐛 open issues in our GitHub repo for each point of feedback
The text was updated successfully, but these errors were encountered: