As you might expect, this year’s Google I/O provided a ton of new content about Progressive Web Apps. Here’s what I’ve learned so far.
As I explained in This is What Google Said About Progressive Web Apps at I/O a year ago, Progressive Web Apps (PWAs) are the future of web apps. They overcome the inherent limitations of the web—performance, quality, and poor/unavailable Internet connections—and provide “native-ish” experiences on mobile and the PC. PWAs are so powerful that they can and will often replace truly native apps, and because they can run on any modern platform, they present an interesting solution for both developers and users alike.
Since last year’s I/O, support for the PWA platform has expanded dramatically. I’ve written a lot about Microsoft’s work to integrate PWA into Windows 10, most obviously in Microsoft’s Bold Plan to Bring PWAs to Windows 10, and that support just shipped in version 1803.
Part of that support includes offering PWAs through the native app store in Windows 10, a first. And that use case is so compelling that Google intends to do so as well, with Android’s Google Play Store.
But it’s not just Microsoft. PWAs work in “6 out of 6.5 browsers,” as Google put it this week, meaning Google Chrome, Apple Safari, Mozilla Firefox, Microsoft Edge, Opera, Samsung Internet, and sort of on IE 11. You’d have to try pretty hard to use an OS platform or browser that doesn’t support PWA and its constituent technologies in some meaningful way. And that means that as PWA capabilities become more sophisticated that this platform has emerged as the go-to solution for developers that are creating multiple client apps across Android, iOS, and the web. Or wish to do so with new apps.
Google is talking up PWAs at I/O this week alot. And while I’m sure I’m missing a few resources, here are the sessions and other I/O videos I’ve watched and can recommend to the PWA-curious.
- The web: state of the union
- PWAs: building bridges to mobile, desktop, and native
- PWA starter kit: build fast, scalable, modern apps with Web Components
A lot of the information in those videos is developer-centric, as you should expect. So here are a few key takeaways for users, focusing only on what’s new this year:
PWAs can use native features. In all the talk about PWAs being “nativish,” I think many lose sight of what that means. Which is this: PWAs can use actual native OS features. These include, among others, geolocation, camera APIs, and much more. And there are new native PWA features coming on board all the time: Google talked up new media features at IO, including Picture-In-Picture (PIP) support. Google has also created a new open video format called AV1 that provides 30 percent better compression than VP9 and is optimized for PWAs.
It’s not just for mobile. In addition to Windows 10, PWAs are supported natively in Chrome OS and Chrome (the web browser), and both are picking up additional features related to PWAs. These include an “add to desktop” function that is more sophisticated/nativish for PWAs. Even Chrome for Mac will get this functionality later in 2018. (It currently lacks any “add to desktop” functionality.) Many PWAs are now supporting desktop use with native features, including Spotify, Gmail, and even AutoCAD.
New PWAs. Google talked up a number of new PWAs, and while I’m sure I’m missing some, a few I noted include Pinterest, Ofo, 1-800-Flowers, Starbucks, Vimeo, Voot Lite, Globo Play (Brazil), and Editora Globo (Brazil).
More is on the way. In the near future, PWAs will be supported natively on the Mac and Linux via Chrome. They will support app-specific keyboard shortcuts that can adapt to the underlying platform. They will support notification badges on the app’s icon (say, in the Windows 10 taskbar), and will be able to capture app links. (Meaning that when the user clicks on something anywhere that requires a specific app, that app can be a PWA instead of a native app.)