In the simplest possible terms, a Progressive Web App is a mobile website transformed with additional features and functionalities that give it a definitive ‘app-like’ feel. It is displayed using an instance of Google Chrome and uses service workers to ensure smooth operation even without a reliable internet connection.
So it’s a website - but it feels like a native mobile app, with a custom loading screen, smoother animations and no navigation bar. Your average end user will likely call it a mobile app. I know I did until I researched the subject further with our developers.
Progressive Web Apps are seeing wider adoption every year. In recent years, Twitter, Aliexpress and NASA all used Progressive Web Apps to create new versions of their services.
The trend of providing ‘app-like experiences’ in mobile websites started around 5 years ago but was not named until the Google I/O conference in 2016. Google has been promoting Progressive Web Apps ever since, and it was a large part of Google I/O 2017 as well. You can look at a fresh video from this year’s conference below:
But that’s just context. The real question is: are PWAs worth looking into as a solution to create a mobile app for your web service?
Progressive Web Apps have a range of features that set them apart from the regular web experience.
First of all, once you enter a website that works as a Progressive Web App, you will be prompted to pin the PWA to your home screen, helping you save the app for later and start using it regularly.
Unlike regular websites that usually stop working without an internet connection, Progressive Web Apps use caching to maintain offline functionality. Coming back to a PWA without internet access you may not see the newest data, but you will not be left with a blank screen.
More importantly, a Progressive Web App can work in the background, sending you push notifications to keep you up-to-date on the newest content and allowing the app to synchronize data or send it to the user even when it is not active.
There are some limitations to what Progressive Web Apps can do. PWAs allow you to use some of your phone’s functionality such as geolocation and Bluetooth, though other available device features largely depend on your platform, system version, and browser version. Features such as NFC or the light sensor may not be supported on some devices.
Progressive Web Apps also cannot communicate with other apps on your phone. Still, with the addition of service workers you can have more control over where and when your device’s features can be used.
All of these limitations are subject to change, however, as the possibilities of PWAs and mobile browsers grow. To stay up to date on what features your browser (and your PWAs) can access, check out this nifty site: whatwebcando.today
From the user side, there is no need to install a PWA from the Play Store or App Store. Instead, when you first start using a PWA, it will prompt you to pin the app to your homescreen. Do this, and, hey—presto!—the app is now pinned next to your native mobile apps. On your side, this means you can also avoid the review process used by the Play Store/App Store, getting your app live faster.
Progressive Web Apps are easy to expand. Because you’re essentially working on a website and adding some functionality, you can add new bells and whistles step by step. You can also update your Progressive Web App with new features as more browsers become compatible with everything PWAs have to offer.
Just like regular websites, Progressive Web Apps are cross-platform.
With the backing of one of the largest software companies in the world, there are clear indications that Progressive Web Apps have a bright future. I invite you to look up the presentations from this year’s Google I/O 2017 conference and to see how many of them touch upon PWAs. I’ve personally lost count, but one thing is clear: Google wants more websites to develop into an ‘app-like’ experience, in some cases becoming almost indistinguishable from native apps.
Of course, the ‘website as an app’ solution is not ideal in all situations.
First of all, Progressive Web Apps currently have less access to native system features than native apps. Not all browsers include full support for everything web apps can do, although seasoned web developers can make the core functionality of the web app available in most circumstances. In the worst case scenario, the PWA will simply offer whatever a mobile website can.
Second, PWAs are currently a somewhat Android-centric solution. Apple’s iOS is only partially supported.
Finally, bypassing the review process at the Play Store/App Store is a double-edged sword. It can help you release your app faster, but it won’t make use of the Stores’ promotional potential.
Remember how we mentioned that Google is strongly backing and promoting Progressive Web Apps? Well, speaking about PWAs at Google I/O is just the start. Google has also published a myriad of case studies showing how Progressive Web Apps are improving both the technical and business performance of various web services that decided to make the switch. Here’s a few that we particularly liked:
In short, PWAs can increase engagement, conversion and interaction rate while at the same time reducing data usage and loading times. We highly encourage you to give the above links a click and see just how ‘app-like’ Progressive Web Apps can be.
Let’s sum up why Progressive Web Apps might be the right fit for your web service.
As you can probably tell, we are quite excited about Progressive Web Apps and the possibilities they offer. They may not be a solution for everyone, but we believe a PWA can create a strong mobile presence even for advanced products that have already been released to the market.
If you’re interested in learning more and want to find out if a PWA is a fit for your web service, we’d love to continue the conversation. You can contact us here.
And if you’re interested in software development outsourcing as a whole, make sure to grab a free copy of our C-Level Guide to Software Development Nearshoring.
Once again a huge thanks to Damian Blejwas and Rafał Gajewski for lending their time and expertise to the creation of this article.