Progressive Web Apps, the future of web applications?
Shyam G
It’s a Native App… It’s a Website… It’s a Progressive Web App! #
[Image courtesy: Ionic.com Blog]
Custom dictates that any emerging business kickstarts their online presence through a website, followed by an Android App and iOS app - often in that order. The reason is simple - maximum outreach happens over the Internet. In other words, what happens on the Internet, stays on the Internet. In the era of smartphones, the bone of contention has always been Web vs. Native. Google blurred this line.
“Why not both?”
A question developers at Google asked themselves, and the Progressive Web App was born. It looks like an app, it behaves like an app, it has all the functionalities of an app - but it runs over the internet (and therefore uses data) and takes up minimal storage space on your device.
To be honest, this is not an entirely new concept. Since 2011, browsers have had the option to add a website to the Home screen. However, what is different is how PWA’s also perform the function of an app.
PWAs are smartphone apps, that don’t actually reside on your phone. They use an App Shell(which is exactly what it sounds like) and Service workers to deliver the experience of an App, whiich doesn’t have to be installed on your smartphone the way Native Apps must be.
As Google Dev Forum puts it,
“Progressive Web Applications take advantage of new technologies to bring the best of mobile sites and native applications to users. They’re reliable, fast, and engaging.”
PWA work off the internet, while staying on your Home screen. Your immediate thought would be, “But, what if I have connectivity issues?”
They have a solution for that too - caching.
How does it work? #
When you open a PWA, what starts up is the App Shell. This gives you that ‘App-ey’ experience that we have all grown so fond of. The data in the App shell is then downloaded from the internet by Service Workers. The catch is that the service worker does not always download the data that you need at that moment. Service workers seek to pre-download data that you would need in the future and cache it. This helps the App shell display the data that you need when you need it, with no lag annoyances and minimal storage taken up on your smartphone. This makes for a whole seamless and light experience.
Does being on the App store make a difference? #
Although featuring on the App Store may not necessarily make your App popular, it does help. Especially in cases where a new or emerging business that relies heavily on word-of-mouth rather than advertising. While research shows that being on the App store does not impact the top 0.1% of existing apps, this is because their popularity is driven by their online presence and not by being ‘hot’ on the App Store (think ‘facebook’).
Putting up with a PWA #
Jeremy Keith, on his website Adactio, puts forth the following argument:
“Alas many of the current examples of so-called Progressive Web Apps are anything but. Flipkart and The Washington Post have made Progressive Web Apps that are getting lots of good press from Google, but are mobile-only.
"Looking at most of the examples of Progressive Web Apps, there’s an even more worrying trend than the return to m-dot subdomains. It looks like most of them are concentrating so hard on the “app” part that they’re forgetting about the “web” bit. That means they’re assuming that modern JavaScript is available everywhere.”
Downward compatibility would be a major issue in the case of PWAs as in the absence of an up-to-date browser (which happens more often than you think), we are left empty-handed.
The “I’m building a PWA” checklist: #
- Configure push-notifications wherever needed by the app
- Responsive design to suit tablets and smartphones in all the shapes and sizes they come in
- The app must run offline rapidly and without a glitch
- Touchscreen-friendly appearance and functionality (a touch of UI/UX magic)
- App metadata to tell the browser how it should behave when installed on the phone’s Home screen. We’re talking high-resolution icons, splash screens - the works
- It should be Installable - as in it should function as an app the moment you add it to your homescreen
The good part #
PWAs could mean that we are moving into an age of smartphone usage where device storage is a thing of the past. Computing requirements could become substantially lower, allowing more background apps to run without any effort from the side of the user. The digital world has always been quick to catch on to latest trends, and the PWA bandwagon is filling up rapidly. Amid all the clamouring, Flipkart has quietly managed to make its presence felt with a well-rounded app! Few others have managed to achieve the same level of success with their own.
When all is said and done, this could be the next big thing - for the next few months.
Shyam, from Projects, is our in-house tech-lover. A voracious reader, he stays up-to-date with what’s what in the tech world and, given his penchant for writing, contributes regularly to the Influx blog. Shyam has an engineering degree in computer science.