-
Notifications
You must be signed in to change notification settings - Fork 168
Add navigator.install()
#1175
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
base: main
Are you sure you want to change the base?
Add navigator.install()
#1175
Conversation
I'm fascinated to see how this pans out given we now seem to have gone full circle from Some questions:
I think on balance my advice (in the capacity of an Invited Expert) would be to not add this feature to the web platform, but to instead focus on how to improve the user interface that user agents provide to install web apps. It is already possible for browser vendors to implement an "install app" feature inside user agents, which could be a more prominent and trusted user interface than an install button in each web app (e.g. an ambient indicator in a URL bar to indicate the current document is part of an installable web app, and a prominent "install app" button). Instead this feature currently tends to get buried inside multiple levels of menus or use obscure language like "add to home" rather than "install". Unfortunately I think this poor user experience is a result of misaligned incentives of the current incumbent "user agents" rather than a lack of creativity in user interface design. If browser vendors continue to bury and obfuscate the install app feature then I can see why this API would be necessary, but I think the resulting user experience (spammy install buttons and prompts everywhere) would be worse for everyone. As an aside, this is another example of something that could be much simpler to implement if a web app was identified by its manifest URL ( |
@benfrancis This is all in flux. Drafting this first specification text was just my initiative to have a basis for discussion. No vendor has committed to implementing this.
Wow, interesting historical insights. I only joined this effort in 2018…
This is up to the Working Group to decide. Safari has traditionally allowed the installation of all websites regardless of any preconditions. This would also suggest
(see above)
We already have
The idea of the Web Install API would be to allow same-origin installations as well, e.g. example.com could suggest to install example.com/docs or example.com/sheets. Same-origin installs also have TAG approval. I think improving the install UX is an orthogonal effort. |
This is a first pass for introducing
navigator.install()
. The goal is to specify a method that allows same-origin installs (current and background documents).This draft currently only covers same-document installs (zero parameters) and does not take manifest IDs into account yet.
Relevant documents:
Acknowledgements:
Closes #???
This change (choose at least one, delete ones that don't apply):
Implementation commitment (delete if not making normative changes):
Commit message:
Add API for installing web applications
Person merging, please make sure that commits are squashed with one of the following as a commit message prefix:
Preview | Diff