Raeygzz
Raeygzz

Reputation: 61

Difference in offline-first approach and PWAs?

While googling for the confusion of mine, I didn't found the satisfactory resource.

so the question which I was searching for was, What is the difference between offline-first approached mobile apps and PWAs.

As to my level of understanding any mobile app lets say; a react-native app with redux in use or with SQLITE or with realm can be made as a offline-first approached app. And with PWAs the service worker(of which i have less knowledge) makes all the offline user-interaction and at last when the net connectivity is confirmed the data is fetch or retrieved as required by PWAs.

Though I am not mentioning about other features PWAs can perform(again of which I have less knowledge). And even when the modern browser can only support for PWAs, why there is a hype of PWAs in todays trends?

Please guide me through with any mistake with my question. Any kind of information, knowledge or link to answer my query is much appreciated.

Upvotes: 4

Views: 1446

Answers (2)

1nullpointer
1nullpointer

Reputation: 1262

Most of the major apps till recent times was targeted towards countries having decent internet connections. With access to internet spiking in developing countries, most untapped market is coming to light. Though these parts have internet access now , the connectivity problems are plenty. So, to give the best experience for this new brand of customers, we need apps that can run offline

enter image description here



Offline First Approach :

This approach mostly caters to any device which can run offline until a reliable connection is interfaced. As developers , this would mean build the capabiltity to store information in the device through databases, caches or any other local storage approach. And then when the user opens the app (desktop/mobile) , these run as normal as possible. Just give the user a heads-up that it is not in sync with the latest.

So, an offline first approach can be

  1. Android native app with an offline capability
  2. IOS App w/ offline features
  3. Internet dependent Desktop app w/ offline support
  4. WebApp w/ offline functionality : PWA is the latest

enter image description here



PWA (Progressive Web Apps) : A PWA is a Web App which has the capability to run offline. With low cost devices (memory deficient, low processing power ) used by many of these users, it's imperative that people installing new native apps will reduce. Also, it's hard to convince people to download and install a new app.

enter image description here

That is where a Web app can be the game changer. A Progressive Web App which has native experience and offline capabilities could drive more users to try a new offering. Adding to that, without forcing a user to install one more app , a link can be easily marketed.

A Progressive Web App is a subset of the offline first approach. With browsers adding more capabilities to access native functions like Contacts as @Francesco pointed out , PWA might will be the first step towards modern app development to release any new feature.

Upvotes: 2

Francesco
Francesco

Reputation: 10830

You can read the first of a series of articles about PWAs to get more details about PWAs features and their benefits.

The two concepts are not mutual exclusive.
PWAs, thanks to the Service Worker and caching strategies, are able to implement/provide an offline first approach by caching target assets or data responses. You can however provide an offline first approach also by using other technologies, without introducing a PWA.

The hype behind PWAs is due to the many extra functionalities we can add to a web app, making it behave and look like a native solution. Think just to the advantages of having your frontend team developing a web app that with very little efforts seems almost entirely a native app. And this without having to hire a dedicated native team (iOS/Android).

However PWAs are not the silver bullet for any scenario. They still have limitations that only native apps can provide (eg. SMS capabilities and accessing to the device contacts), even if there are different APIs that aim to solve these gaps, like Google Contact Picker API.

Upvotes: 2

Related Questions