Google Starts Its Push To Progressive Web Apps - Bye Bye Chrome Apps
Written by Ian Elliot   
Wednesday, 06 December 2017

Google has removed Chrome apps from the Chrome Web Store and has made it clear that Progressive Web Apps are what you should move to. There is a lot that is unclear about all of this and, apart from a few small things, it all feels like a marketing exercise.

Chrome apps were essentially web apps with a manifest that allowed them to be installed and gain access to a few non-standard APIs - USB, Serial, Network and Bluetooth. They also supported a separate thread of execution for some JavaScript that looked after everything. Nothing much revolutionary, but of course the problem was that Chrome apps only ran on Chrome. Now Chrome apps are about to only run on Chrome OS, so I hope you didn't spend too much time working on the project. Once again Google champions a technology only to dump it and all the programmers who invested in it.

In this case it is going to be a slow death. There won't be any more new users on Windows, Mac or Linux, but current users can still make use of their Chrome apps and they will even receive updates should you be silly enough to waste your time on them. They will be completely phased out sometime in 2018.

The replacement for the Chrome App is the Progressive Web App (PWA) - and there seems be little reason for the "Progressive" in the title other than marketing hype. A PWA relies on the new Service Worker API and its associated Fetch and Cache APIs. Basically the service worker does the job of the background code in a Chrome app. It sits between the HTML page and the web and intercepts all URL requests. It can service these by either downloading the resource in the usual way or it can satisfy the request from a cache. It can also do a more subtle job of supplying the cached version until it has managed to get a fresh copy from the server. 

The idea is that a PWA will work faster because it will use old data until the new data is ready. This means it looks more like a desktop or native app that just happens to get some updates from the network. The advantage is that the Service Workers are supported on Chrome, Firefox, Edge, Opera and eventually Safari.

You can probably guess that Apple dragged its feet over adding to its browser the ability to run apps that don't come via the app store. I'm sure they will find a way to make sure that they do have to come from the app store if PWAs become popular.

You can already install a PWA on Android via the Android Chrome browser and in the near future you should be able to distribute your PWA as an APK and pretend it is a "proper" Android app.

There is so much hype currently surrounding the PWA on the Google Developer site that it is very difficult to sort out vague hopes, along the lines of "write better code", from the real technology. For example, one of the points is that PWAs are fast:

pwa1

This is more like a wish to be better tomorrow than a technology offering to solve the problem.

The same is true of claimed reliability - yes but only if you do it right - and the requirement to be engaging - I don't even know what they mean.

The strange thing is that it isn't just Google running the hype machine. Mozilla's MDN page has a list of similar claims including

pwa2

Tell that to users of IE or anything older than the current crop of browsers. What they mean is, it works on nearly every modern browser in almost the same way.

Don't misunderstand me, I think PWAs are good, but what is Progressive about them still mystifies me. I like the Service Worker and its APIs but there need to be a few more APIs to get up to the same level as a Chrome app. This is the reason Google can't drop Chrome apps completely just yet.

Google provides two tools to help with converting and creating PWAs. There is Caterpillar which will convert some aspects of your Chrome app to a PWA. This doesn't do a perfect job and it is very limited but it might get you started. It has the slightly amusing disclaimer:

This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.

lighthouse

The second is a more useful tool called Lighthouse. This used to be a test tool for Chrome apps but now it will tell you what is wrong with your PWA and it is very handy.

Given that both Google and Mozilla think that the future is PWA, it most likely is. However, it is still a young technology and there are missing pieces. If you can avoid getting involved as an early adopter then I would advise it, but you need to keep an eye on how things are developing. The Service Worker is worth including in your code whether or not you think of it as producing a PWA.

 pwa3

More Information

From Chrome Apps to the Web

Notice the update of the 5th December at the bottom of the page.

Update on December 5, 2017:
Chrome Apps will be removed from Chrome Web Store search & browse functions in mid-December 2017. Existing apps will continue to work and receive updates.

The Chrome browser will continue to load packaged and hosted apps on Windows, Mac, and Linux beyond the previously announced deprecation timeline. Another update will be posted here when a new date for the Chrome Apps EOL on Windows, Mac, and Linux has been finalized. Posted by Rahul Roy-Chowdhury, VP Product Management

Related Articles

New Mobile Web Certification From Google

Chrome Apps No Longer On Windows,Mac And Linux

At Last You Can Install Web Apps In Android 

Mozilla Web Apps - take the web page out of the app 

Chrome Gets Desktop App Launcher

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Discover PostgreSQL How-Tos
16/12/2024

A veritable treasure trove of assorted how-to recipes for PostgreSQL, stored as a Github repository, has been started by Nikolay Samokhvalov, well known in the PostgreSQL world.



Google Releases Gemini 2 And Jules Code Agent
18/12/2024

Google has announced an updated version of Gemini, saying that Gemini 2.0 Flash Experimental will "enable even more immersive and interactive applications", along with new coding agents that can take  [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 <ASIN:1871962560>

Last Updated ( Wednesday, 06 December 2017 )