Browser support

One of the first things i always get asked about when talking about PWA's is browser support, especially with Safari. The cool thing is that as long as you do "Progressive Enhancement", which in this case is feature checking, you can build a PWA that also runs in Safari. The important thing here to remember is that yes, on an Android device with Chrome, Firefox, Opera or Samsung Internet, your PWA will load faster, due to service worker, and have access to many more native device features, but you can at least give a basic, good web app experience on Safari.

One of the most important things about PWA's is of course service workers. As it stands today, service workers are actually widely supported. You can check out details here https://jakearchibald.github.io/isserviceworkerready/ but the tldr is that service workers are supported on Chrome, Firefox, Opera and Samsung internet with Edge implementing very fast, in fact i think there is experimental support already in preview versions of Edge. Of course, the standout here is Safari. As far as I know, the only thing we have from the webkit team on service workers is a brief mention on a 5 year plan document, but that is better than nothing. There are things we can do as developers though to encourage Apple to support service workers. Apple is famously intently focused on providing a good user experience. If we can show Apple that our PWA loads faster and provides a better user experience on browsers other than safari this will help to encourage Apple about how important service workers are.

Another important thing technology for PWA's is access to native device features. This includes api's such as the HTML5 vibration api, the getUserMedia api and the web push notifications api. Chrome is definitely the leader here, with Firefox close behind. Support for these api's is a little more scattered at the moment than service workers, so i definitely recommend checking out https://whatwebcando.today/. To ensure that your PWA does not break when trying to use some of these api's on browsers that do not support them i definitely recommend doing feature checking, which this article http://diveinto.html5doctor.com/detect.html does a good overview of.

As you can see, with modern browsers our PWA will be able to make use of the most cutting edge features on the majority of browsers, but just to be safe you should always do feature checking first.

results matching ""

    No results matching ""