Progressive web application (PWA) is a type of web application that uses the capabilities of a modern website to make sure that users have a native app like experience. The idea of PWA was introduced by a Google engineer called Alex Russell back in 2015. He then outlined the requirements and technical baselines of a progressive web application and since then the whole industry has been working towards PWA(s) by integrating this to their browsers. In this article, we are going to discuss all you need to know about progressive web applications.
The technical baselines of PWA(s) by Russell
In order for a website to qualify as a progressive web app it needs to fulfil the following;
- Your web application needs to be running from a secure origin. Should be running under HTTPs.
- Should load even when you are offline. This is made possible by the use of a service worker
- Should reference web app manifest. This file should at least have 4 key properties i.e. start_url, short_name, name, and display.
What makes a PWA unique?
There are several aspects that make a progressive web application unique. This includes:
- Usability – for the first time this web applications can work offline and also in the background and that is done through the implementation of a service worker.
- No browser – when you open a PWA it does work like you are on a browser, but instead, it works like you are in a native mobile application because you do not get the browser controls.
- Updated – PWA is always fresh and up-to-date due to their capabilities of using the service worker.
- Push notification – PWA has capabilities to send a notification to you at any time
- Progressiveness – PWA works for each and every user regardless of the browser they are using.
Technologies used in PWA(s)
There are many technologies used to make progressive web applications but we have two basic and common ones. These are:
- Web App Manifest – is a specification by W3C defining a JSON-based manifest and usually named manifest.json used to provide developers with a centralized point to hold the metadata that is associated with the web application. These includes:
- Links to the web application icons or image objects
- The display mode settings options, e.g. full screen
- The default orientation of the web application
- The web application configuration data
- The preferred URL to open or launch the web application
- The name of the web application
In conclusion, we can say that progressive web applications are slowly coming to the modern market and you never know this will be the next big thing, as it is more comfortable for users and also lightweight compared to native mobile applications.