Progressive web apps (PWA) are web applications or websites that have the best features of both the web and native apps.For example native apps have more richness than web applications ,similarly Progressive web apps have the same richness as native apps.So Progressive web apps feels like native apps to the end user.Similar to web applications Progressive web apps can be accessed using the browser.
Progressive web apps uses the existing set of technologies to create a more rich and engaging experience for the end user.
Important features of Progressive Web Apps
Progressive web apps have the following features:
as the name suggests Progressive web apps(PWA) enhance progressively over a period of time.Basic fucntionality should work from the starting but makes use of the device API over a period of time.
PWAis responsive.It will fit on any device such as mobile or tablet.
Feels like Native App
feels like native app .Features such as navigation in the app feels same as the native app.
can even work offline or on a weak network.
using the features such as the host OS and push notifications.
Progressive web apps are discoverable using browsers.
Always up to data through background syncing using service workers.
because of HTTPS.
Can be added to home screen
So Progressive web app has the features of both the web applications and the apps.
- PWA is accessed using only HTTPS
- PWA is responsive.
- Can add to home screen
- App works even offline
- Feels like native app
Background Syncing and Push Notifications are used in Progressive Web Applications:
Background syncing when you are offline you perform some action such as sending chat message on messenger.When the network is available the action is completed and the chat message is actually sent.
Push notification is used for sending information to a device.Browsers have good support for push notifications.It is of 2 types:
- persistent notifications interaction happens using service worker.
- non persistent service workers are not used.notifications are sent without using service workers.Implemented through notification API.
Users are explicitly asked for permission to show notifications.
Web app manifest file
This is a manifest file which allows the web app to have capabilities such as:
- Allows to run web app in full-screen mode and as a standalone application
- Defines theme and background color of the app.
A web app manifest file is a JSON file.Web app manifest file defines things such as:
- short_name is the name of the application
- name this defines how the application will be listed
- description general description of the web application.
- icons defines an array of images