Recently we published the full guide on web app development. And there are many thoughts about should you build a progressive web app or a native. This time we’d like to share with you the opinion, why your web project should be a PWA. And as always, you need to make a decision by yourself.
Let’s start with the explanation. Because every good article should have all the definitions of the things it is written about.
So, PWA (Progressive Web App) is an app within your browser, displayed as a website. It’s not something that you have to download and install from Google Play or the App Store. The ‘PWA’ is mostly the marketing term but no longer just a Google thing. You can take it as a website with a special power.
PWA is based largely on the idea that the Internet, particularly with mass adoption of HTML 5 and similar web development languages, has evolved. Matured to a point where PWAs are capable of providing similar functionality and seamless user interface found in the best traditional native apps via a direct mobile experience. PWAs have the ability to connect with the operating system (and, thereby, its users) on a deeper level through installation and APIs offering capabilities like notifications, access to the address book, and more. Not all of these APIs require installation for access, but some do.
There are some characteristics of PWAs that will provide value to your users and are well worth your time and consideration. PWA is
– safe (it’s run under HTTPS),
– it has responsive layouts to fit any type of device screen,
– it ensures your site works on any device that can access the web, regardless of its capabilities, and, finally,
– it pops up organically when people search for related topics.
All of these features are considered best practices in web design and development.
But let’s move to the main part of our material. Here for you the main (obvious) benefits of building a PWA:
- Developers will no longer need to create multiple apps across multiple mobile platforms – all you need is one PWA. No separate code. Savings in time and efforts for app development. It’s relatively cheaper than developing native apps
- Your single Progressive Web App will work across all your platforms and devices. By this, you’ll maximize the reach for your product and a market will be expanded as a result
- A PWA, unlike its native counterparts, does not require installation prior to usage. That attracts users because no additional activity demanded. It works within the user’s browser
- With PWA’s vastly improved app cross-functionality, switching between apps is much faster and more intuitive (like Facebook Instant Articles or an in-app browser for Slack)
- Unified customer experience. A Progressive Web App can keep all your users up to date by allowing the latest functionality, features, and security updates without the need to re-download the app. All your users have access to the same version of your app. By this, you can consistently deliver a powerful and optimized user experience to your entire user-base
- PWA offers a far greater degree of freedom for platform owners. You are free to develop things the way you need with no restrictions from iOS or Android
So why the native apps are still here? The fact is that the native app became the dominant force on mobile platforms because web experiences were simply not effectively adapted to it. And, of course, PWA has some cons to consider:
- Progressive web apps have limited capabilities for integration with a smartphone or tablet’s hardware features. This prevents PWA from being developed for use with mobile accessories and “wearables” like smartwatches, fitness trackers, and wireless earphones
- This is still very important to have your app listed in App Store or Google Play
- To use PWA you need an Internet connection. (But cash and custom “offline” page can move the pain away)
As a conclusion, here you have 3 technical requirements (only) for developing your PWA:
- You need to be running under HTTPS to ensure that the connection to your web server is secure. That matters as far as PWAs can be granted a whole host of extra privileges in an operating system
- You need a Web App Manifest. It’s a JSON file with information about your site. Make sure you reference it using a link in the head of your web pages so browsers and search spiders can find it
- You need a Service Worker. You can use one of the recipe guides for creating Service Workers tailored to the kind of jobs you want them to do.
We’re pretty sure that the future is in PWA development. In particular, client-side frameworks that have server-rendering as an option work well with the model of second-load client-side routing that Progressive Apps naturally adopt as a consequence of implementing robust offline experiences.
For creating this material we used:
Progressive Web Applications: The Thing to Consider When Short on Resources
Progressive Web Apps: Escaping Tabs Without Losing Our Soul and
Yes, That Web Project Should Be a PWA