Google Chrome Engineer and PWA Tech Lead Dominick Ng took to the stage at this year's BlinkOn 10 conference to plot out the ambitious course the company hopes to take to bring progressive web apps and native desktop back together. Summarily, Google hopes to redirect its attention away from its web-first approach to bring native performance and resources to bear in PWAs that remain universal, discoverable, and work either offline or on.
The effort will primarily focus on delivering more productive experiences, in terms of creativity, work, and gaming. A key aspect of that will include encouraging the build-out of applications that maintain linkability and indexability as well as offering a native app-like ability to be launched from either an OS's selection of software icons icon or browser.
Among the examples of how the company plans to accomplish that feat is work that's currently underway to allow self-contained PWA multi-tab instances. The example would enable developers to add functionality enabling users to run more than one tab within an installed PWA. The example shown at BlinkOn centered around Google Docs and showed an installed PWA with multiple documents open in a single window.
The native UI encompassed within the PWA window remains unchanged — with no Omnibox or navigation buttons outside of the standard three-dot menu — but tabs are presented to show individual instances with multiple links opening within the same native context. In that use case, the feature allows the PWA to work similarly to Microsoft Office with more than one file opened at a time for better productivity but that's not the only way the feature could feasibly be used.
The tabbed windows will be just one of several new 'window types' available to developers to create new native experiences that fit in more readily alongside desktop software.
Tabbed PWAs only tell a very small part of the story
In the simplest explanation, PWAs currently work using a combination of Service Worker-fetched cached files that allow the app to work from a pre-set state even if network requests fail. That's backed up by a manifest file that provides vital elements of the native-like UI as well as a web-based location for the app.
That web-first approach is what Google plans to alter, moving to an offline-first approach that doesn't lose the capabilities that are currently espoused in PWAs.
The first hints of that approach can be seen clearly in recent additions to Chrome's Canary Channel that have pointed toward future support for installation directly from Chrome's multi-purpose URL bar — the Omnibox. The PWA installation update will add an 'install token' to the UI that, when clicked, will bring the app to the forefront and away from the browser in a native UI configuration.
Dominick Ng indicates that change will begin rolling out with either version 75 or 76 of Chrome depending on which platform is used but that it will be landing on all desktop platforms. Several other examples were unveiled officially too, regarding the types of features that will stem from the incoming changes on the user-facing side of Chrome. Timeframes are tentative but each of those serves to highlight exactly where Google is headed with its new goals.
By Chrome 76, for instance, Googlers plan to turn on the ability for installed PWA app icons to show icon badges for native notification-like functionality similar to how app badges in Android work. Chrome 77 is expected to see PWA access to contact pickers, letting users utilize their native contact lists with web apps. In Chrome 78, Google plans to add support for full native file system access, enabling web apps to take advantage of file assets just like native software. The basis of that will be added by Chrome 75, with the addition of support for image clipboard support.
How will this affect users?
The most obvious impact the change will have on users will apply directly to Google's own operating system, Chrome OS. Because the web-heavy platform is predominantly cloud-based, native PWAs will serve as a way to open up the system for web developers. As a result, users should begin seeing more powerful applications for a wider variety of tasks that take full advantage of the more powerful hardware found in some Chrome OS laptops and tablets.
Beyond Chromebooks, Google's shifting approach is expected to make web applications truly competitive with native software on all platforms. In short, not only should PWAs function and look like native apps when downloaded and used with access to native assets.
That should be matched in a browser tab regardless of what platform the user accesses it from and the apps should serve a much wider array of purposes. They'll also begin to close gaps between the different types of currently available software and in many ways be more useful, particularly since the apps will be updateable just by reconnecting to the web.