Web applications have struggled for implementation since browsers gained more excellent capabilities than displaying text and images. Initially, these web applications were clumsy and heavy and could not compete with desktop applications, the classic ones that we have to install on our computers. The arrival of thousands of mobile apps in the face of the explosion in the sale of smartphones offered another world of possibilities. Progressive web applications fall between the two; they behave like native webs but use web technologies.
Google took up the idea and supported the installation of mobile applications in Chrome from Android 4.0 as if they were native system applications. The integration of PWAs has reached all platforms: iOS, Android, Windows, macOS, or Linux, and Google has become one of its prominent supporters.
These types of applications attempt to bring the usability of a native mobile application to the feature set of a modern browser, taking full advantage of advances in both areas of development, offering obvious benefits by allowing users to run them directly from the desktop without additional steps. They can also work offline, although most Internet services require a connection.
The concepts of a PWA are defined by:
Universality: A PWA should work seamlessly for every user, regardless of their web browser.
Responsive: it should work with any device, laptop, tablet, or smartphone.
Design: Must mimic native mobile apps, that is, simplified, easy-to-find menus, with simple interactivity for advanced features.
Security: PWA must always use HTTPS to keep user data safe.
Updates: PWAs stay up-to-date and offer the latest versions of a service or site.
Discovery: Users must easily find PWAs and be identifiable as an application rather than a website.
Installation: from any browser without additional steps and without the need for downloads from application stores.
Sharing: PWA only requires a single URL to share without any installation.
As you can see, advanced web applications aim to provide users with a complete website experience with optimized features and the interface design of a native application.
How do they work
The key to advanced web applications is the so-called service workers. It is a script (a controllable proxy that runs between the browser and the server) “detached from a web page, opening the door to functions that do not require a page or user interaction. ” As such, these service workers form the foundation of the PWA standard, using web caching for near-instant results.
The service workers only last as long as your action is required. When you click something or use a function in a PWA, one of them kicks in, processing the event by deciding if the offline cache can complete the request. The idea is that there are multiple offline caches for PWA to select from, providing a much more comprehensive range of offline functionality.
Also, the cache isn’t just for offline speed boosts. For example, if you run a PWA, but your connection is highly erratic, the service workers can serve an old cache, fully operational, without interrupting the experience. Websites are so well implemented that they load very fast, even faster than a native app.
There are two requirements to use a progressive web application: a supported browser and an enabled service. Websites such as IsServicesWorrkedready allow you to verify the compatibility of browsers with PWA. Others, such as CanIUse, specialize in listing the implementation of this technology in each version and browser. For example, if you search for service workers in the search bar, you will find a table showing the version number each browser implemented them.
progressive web apps
Breaking down the current state of support:
Desktop browser (Full support): Chrome, Firefox, Opera, Edge, Safari
Desktop browser (partial support / outdated version): QQ, Baidu
Mobile browser (full help): Chrome, Firefox, Safari, UC Browser, Samsung Internet, Mint Browser, Wechat
Mobile browser (partial support / outdated version): QQ, Android Browser, Opera Mobile
We confirm that all major web browsers support PWA. Edge Chromium and Safari are the newest additions to the complete support list. In contrast, other alternatives such as QQ and Baidu now use outdated versions and, as such, have fallen to the second level.
How to find progressive web apps
PWAs are already everywhere. Many companies have adapted their websites and services to offer a version of the Progressive Web App. In many cases, you will find them directly when browsing the Internet. For example, an ‘Add to home screen’ dialog will be triggered when you visit the Twitter mobile site. Of course, visiting countless sites and expecting to see a trigger on the screen is not helpful.
Several web portals catalog them. One of them is our web, listing a pretty decent range of PWAs, and new options popping up frequently. Another good compilation is found in PWA.rocks, with a lower number than the previous one, but perhaps a more generous selection.
Also, starting with Chrome 72 for Android, Google added the Trusted Web Activity (TWA) feature, which allows Chrome tabs to open in standalone mode. In turn, this will enable PWAs to appear in the Google Play app store. The first PWAs on Google Play were Twitter Lite, Instagram Lite, and Google Maps Go. Many others have accumulated since then.
Will Progressive Web Apps Replace Native Web Apps?
No, at least for the moment. PWAs are not yet a massively widespread standard. They are a lightweight offering, and since they are predominantly focused on replicating existing sites and services, they cannot replace native applications.
However, its advantages, incompatibility, performance, ease of sharing, push notifications or installation and use without downloads and without taking up space on devices augurs well for a promising future once more websites enable them. A more significant number of users use them.