Coder Social home page Coder Social logo

installable-webapps's People

Contributors

anssiko avatar brucelawson avatar davidbruant avatar ernesto-jimenez avatar girliemac avatar laurentbackelite avatar marcoscaceres avatar marcoscaceres-remote avatar mounirlamouri avatar neilerdwien avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

installable-webapps's Issues

Normalize mentions about the october data set

I think the best option would probably be to add an appendix about the october data set describing the situation and the caveats from the dataset (e.g: not using a mobile UA, so some websites might have done UA sniffing and served a desktop website without mobile specific meta tags)

Then we link to that appendix rather than using the current link to the gist we have right now.

Document anti-patterns

  • Websites nagging users to install the native app (cover iOS App Banners)
  • Webapps not working unless installed
  • Native apps in Android asking for more permissions than they require
  • JS hack in iOS standalone apps to work around navigation limitations (point 8.3)

Discuss issues with localization of metadata vs localization of web app

Need to describe the problem at the moment that even if you get the localized name, the application won't be localized. The navigator.language is the navigator language, so the application has no way of knowing (currently) that the system language has changed. This would require a change to how the web platform interfaces with the OS to get the user's language. This has privacy issues, as it helps narrow down a user's geographic location down to a country. The HTML5 spec currently tries to protect users from this by telling the UA to always report "en-US".

Describe how task switcher integration works on various platforms

Elsewhere, Rob Manson wrote:

..the common experience especially on iOS is that even when you background
an installed app and then foreground it again it reloads the entire
state. This effectively breaks the UX and makes this mode almost
unusable. It's definitely possible to use localStorage, etc. to work
around this but the UX is horrible. Allowing installed apps to persist
their resources and loaded state across background/foreground (and
ideally even launches) would be a massive step forward. Perhaps naming
this a "First use page" would help clarify this focus?

Document case for alternative name

Need to document the use case for a "display name" and a "store name" and what roles they play. Particularly, in iOS, you can search using both the store name and the display name.

Spec assumes entire app is self-contained and requires a consistent display mode

Elsewhere, Mark Taylor wrote:

Specification assumes that the entire app is self contained and requires a consistent
display mode

Most web apps will have both internal links (to other parts of the web app), and external
links to elements outside of the web app. External links often do not contain a route back
to the web app, so the preferred behaviour is either for it to a) launch in the web browser,
or b) launch within the app, with a navigation element allowing users to return to the
web app.

Document that standalone is a user decision.

Need to change the following:

"MUST provide a mechanism that allows a developer to indicate that the
application is able to function as standalone. If no such indication is
given by the developer, then the application MUST launch in the Web
browser as normal. That is, the solution MUST NOT conflate bookmarking
with allowing a web application to be launched as standalone. "

... to make it clear that it's actually a user's decision, but the manifest format needs to give the developer control over some start-up options for standalone.

Application name and localization

I guess some website / webapp have different name/title depending on the locale. I believe Firefox OS allows that. It would be great to have this issue raised in the document.

Investigate security options for app-containment

Elsewhere, @mattbasta wrote:

The sandbox attribute allows you to block same-origin access, prevent top-level navigation, block scripts, and blocking form submission.

This would be great for sites that wrap other sites as apps (consider everything.me) and could provide a way for users to standalone-ize their favorite sites without worrying about the site breaking out of the standalone environment.

Operating System or Platform?

Reference "Installable Web Apps", http://w3c-webmob.github.io/installable-webapps/.

From the Introduction:

"...the web platform also lacks sufficient metadata for a Web application to be successfully integrated into an operating system in the same way native applications are (i.e., not just on the homescreen, but integration into other contexts such as the task switcher, privacy and security settings, etc.)."

I think "operating system" could be changed to "platform". The platform includes hardware, os, features and capabilities, etc. The os is usually discussed in a more narrow context, and the description does not appear to be speaking to the narrow context.

Support for a system-wide configuration file to specify permissions for web-applications

At Mozilla's bugzilla a discussion woke up ( https://bugzilla.mozilla.org/show_bug.cgi?id=424875 ) to make XMLHttpRequest useable for web-applications on the file-protocol without requiring the server to enable CORS. At the end of the current discussion I got the idea of a system-wide configuration file to solve this issue:

  • It contains permissions it grants to web-applications (for example specific/all permissions on specific files/directories).
  • Installer invoked by the user can write the required permissions for their web-application to this file. Also the user can enter manually entries if he wants.
  • A site launched unintentionally on the file-protocol can't do evil things since it wouldn't be listed in this file.

This would help to make web-applications launched on the file-protocol (for example installed by upstream-installers on desktop-PC's) to be more competitive.

Investigate deep linking for applications

Elsewhere, Rob Manson wrote:

Much of this work (and HTML5 in general) is about bringing the Web Platform up to being "equal" with "native apps". But one thing that the Web does that native apps can't do is deep linking (ignoring the fustercluck of intents). I think it would provide a significant advantage if it was also possible to deep link into installed web apps. I understand this is very complex and I'm not proposing any solution right now. But if we don't include this then we are in effect cutting web applications down to the level of native apps instead of leaping ahead of them.

Use Case: Social sharing

User A and User B both have the same web app installed on the devices they are using. User A finds a resource they like inside the app and decide to share this from within the app through one of their social networks. User B sees this link in their social feed and taps on it. Since User B also has this web app installed it would be "nice" to be able to open that resource directly within the installed app. Otherwise User X's browser would just open it like a normal web resource. This can also be relevant for the same user using the same web app across multiple devices.
NOTE: This is one of the key drivers we have found for building business cases of "Web instead of Native".

ICONS

Hi,

On the iPhone there's also link rel="apple-touch-icon" href="/custom_icon.png"

Document premise is incorrectly defined

@Hixie sez:

08:08 Hixie: i disagree with "the web platform lacks a standardized means for a web application to indicate that it can be "installed" and treated as if it were an native application"
08:08 Hixie: the standardised means of indicating that a page can be installed is for the page to exist

He is right. Need to change this to say that "orientation" and a few other bits and bobs are missing from the platform.

Proposal: <title title="Long, detailed, SEO-friendly etc. title">Short app name</title>

http://w3c-webmob.github.io/installable-webapps/#names

Instead of a separate <meta> element, why not just use a title attribute on the <title> element?

<title title="Long, detailed, SEO-friendly etc. title">Short app name (for homescreens)</title>

Joel_MMCC makes the case for this pattern here: http://mathiasbynens.be/notes/touch-icons#comment-76 IMHO it’s hard to disagree with the points he’s making. I’ll echo his comment here:

On the matter of shorter vs. longer web page titles, it looks like the HTML spec itself allows for this already, without needing anything new added to the spec, and requiring absolutely no proprietary vendor metatags (e.g. Mathias’s <meta name="apple-mobile-web-app-title" content="Short title for home screen"> above).

It’s so simple! According to the HTML 5 spec (and I believe HTML 4 as well), the title="…" attribute is a global attribute that can be used with any HTML tag! That includes the <title> tag itself!

So, hypothetically, you could do this:

<title title="Long SEO-friendly overly verbose page title goes here">Short title here.</title>

Voila! This should even validate nicely, as-is!

Now all that’s needed is for user agents (browsers and spiders) to decide what to do with that. I recommend a “smart” approach: For touch icon titles and the like, always use the shorter title that is the inner content of the <title> tag.

For browser window titles, likewise display the inner content of the <title> tag if the browser window is too narrow to display the longer one in the title="…" attribute (e.g. portrait orientation, manually reduced in size, etc.).

Search engines can simply use both as they see fit for their metadata and rankings.

There’d also be no reason that the two couldn’t be swapped (longer title as the tag’s inner content, shorter as the title="…" attribute, instead of vice versa) and have the user agent simply react intelligently based on which is longer and which is shorter, but traditionally the title="…" attribute is used to provide longer descriptive text for some usually shorter or smaller element via a ToolTip (e.g. for <img>, <a>, <abbr>, <acronym>, etc. tags), so that should be the preferred usage.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.