In recent times we hear a lot about progressive web apps, but very few people really know what they are. Therefore, in this article we will see how they differ from traditional applications and what advantages they have over them. But first, let's start with two basic concepts...
What is a web application?
Just as there are apps for Windows or macOS, among others, there are also other types of applications that do not depend on any operating system, but run on a web page in a browser.
Two of the clearest examples of web applications are the Twitter or Facebook websites, with which you can do the same as in native apps for iOS or Android, without having to install anything: just a browser and an Internet connection.
What is a native app?
You may be familiar with the term native app, but you probably have no idea what this concept refers to. Basically, it is an application that has been developed specifically for the operating system on which it runs.
In this way, and unlike a web application that works on different operating systems, a native app respects the look and feel of that platform better, as well as a smoother operation.
What is a progressive web app?
Progressive Web Apps or PWAs (Progressive Web Apps) are somewhere in between: they are essentially web pages, but because they use Service Workers and other technologies, they act more like normal applications than web applications.
These types of applications try to offer obvious advantages by allowing users to run them directly from the desktop without additional steps, sending notifications to the user's own device or the possibility of using the application itself without an Internet connection.
Technically, in order to be able to call a web application a PWA, it must have the following:
Security
The web application must be served on a secure network. Being a secure site is not only a good practice, but also makes the web application a trusted site, especially if users need to make secure transactions.
Most of the features related to a Progressive Web App, such as geolocation, are only available if the application has been loaded via HTTPS.
Service Worker
A Service Worker is a script that allows intercepting and controlling how a web browser handles network requests and asset caching. With them, web developers can create fast and reliable web pages along with offline experiences.
MANIFEST file
This is a JSON file that controls how the application is displayed to the user and ensures that PWAs are discoverable. It describes the app name, launch URL, icons and all other details required to convert the website into an application-like format.
Characteristics of a Progressive Web App
The concepts of a Progressive Web App are defined by:
Sharing
Progressive Web Apps only need a single URL to share, without any installation involved.
Installation
Any Progressive Web App can be accessed from any browser without any additional steps and without having to download anything from app stores such as App Store or Google Play.
Updates
PWAs are kept up to date, so they always offer the latest versions.
Security
A Progressive Web App should always use HTTPS to keep user data secure.
Design
Progressive Web Apps should mimic native mobile apps. Thus, they should have simplified and easy-to-find menus, with simple interactivity for advanced features.
Responsive
PWAs should work on any device, be it laptop, tablet, smartphone, etc.
Universality
Progressive web apps must work seamlessly for every user, whatever their web browser.
How to find a Progressive Web App
Progressive Web Apps are practically everywhere. In fact, many companies have adapted their websites and services to offer a PWA version. In many cases, there are PWA directories on the internet that have a complete registry of all the most popular Progressive Web Apps, and sure enough, the directories themselves are PWAs.
Did you know that soon you will be able to install OneDrive as a PWA?
As Microsoft announced in the M365 Roadmap, it is working on a new version to bring OneDrive much closer to a simplified web use. In fact, it is expected that once we have OneDrive PWA on our pc, we will be able to run it as if it were another program installed on the computer in a comfortable and simple way from our browser.
In this way, all users will be able to enjoy the same functionalities that are currently available in web and desktop versions, taking advantage of the browser's web engine.
PWA: web page and application in one
To conclude, progressive web apps are a clear evolution of web apps that dilute the barrier between web and apps, being able to do tasks that normally only native apps could perform.
And you, do you use any progressive web app in your day to day life?