PWA(Progressive Web App)

Chimgee G
딜리버스
Published in
4 min readOct 11, 2021

What is progressive web app(pwa)?

Purpose of this article

In this article we will introduce concept of progressive web apps and its advantage and disadvantage when comparing to web apps and native apps.

Contents

  • What is progressive web app(pwa)
  • Advantage of progressive web apps (comparing to web apps and native apps)
  • What features you can and cannot implement in PWA?

What is a Progressive Web App (PWA)

Have you ever rejected by app store or play store when updating your mobile application? Are you tired of waiting their approval to update your application? Then progressive web app is a considerable solution to implement and provide your application in real time to your users.

We are implementing a B2B service. Thus our application is not a commercial application. So we were finding solution which is not reliable to app store and play store, and updates could be in real time without delay. Then we found out about PWA and started to research about it.

Progressive Web Apps(PWAs) are web applications that feels like a platform-specific application. They are fast, reliable, engaging and installable.

Advantage of Progressive Web Apps

  • Real time update

PWAs are web applications, then users don’t have to install it from app store or play store and updates are available without any delay.

  • Installable (can set home screen icon)

If users want, they can add PWA into their mobile home screens and reach it by clicking its home screen icon like native applications.

  • Receive push notification

PWA is able to receive push notifications like native apps even if user closes its web browser.

  • Working offline

Expect the situation, when you are the middle of some task and your network connection is lost. PWA is more reliable like native applications which users ongoing tasks are restored when network connection is lost and after your device is online it continues this task again.

  • Good performance

PWA doesn’t load its content every time entering to new page like web apps. Because pwa caches its assets using service workers. Service workers run separately from the javascript main thread and caches assets.

  • Require low data usage

PWA caching system make it possible to require a lot less bandwidth than traditional web apps.

What features PWA can and cannot do according to internet browser?

  1. Safari IOS
  • Offline Mode — YES
  • Background Sync — NO
  • Credentials — NO
  • Inter App Sharing — YES
  • Local notifications — NO
  • Push Messages — YES
  • Idle Detections — NO
  • Permissions — NO
  • Bluetooth — NO
  • NFC — NO
  • USB — NO
  • Serial Port — NO
  • Geolocation — YES
  • Geofencing — NO
  • Device Position — YES
  • Device Motion — YES
  • Screen orientation & Lock — NO
  • Presentation — NO
  • Full Screen — NO
  • Audio&Video Capture — YES
  • Advanced Camera Controls — NO
  • Recording Media — YES
  • Online State — YES
  • Battery Status — NO

2. Samsung Browser

  • Offline Mode — YES
  • Background Sync — YES
  • Credentials — YES
  • Inter App Sharing — YES
  • Local notifications — YES
  • Push Messages — YES
  • Idle Detections — NO
  • Permissions — YES
  • Bluetooth — YES
  • NFC — NO
  • USB — YES
  • Serial Port — NO
  • Geolocation — YES
  • Geofencing — NO
  • Device Position — YES
  • Device Motion — YES
  • Screen orientation & Lock — YES
  • Presentation — YES
  • Full Screen — YES
  • Audio&Video Capture — YES
  • Advanced Camera Controls — YES
  • Recording Media — YES
  • Online State — YES
  • Battery Status — YES

As seen the above list (thanks for https://whatwebcando.today), Apple has more limitation to PWA. But safari is still supporting PWA and new features are becoming available in PWA.

I hope that you had some understanding about PWA and decided whether you need PWA or not. If you decide to implement your service using PWA in react typescript, then keep following next article to start your own pwa using reactjs.

Resources

https://www.youtube.com/watch?v=z2JgN6Ae-Bo

https://brainhub.eu/library/pwa-vs-native/

https://whatwebcando.today

https://love2dev.com/pwa/ios/

https://www.emergeinteractive.com/insights/detail/enterprise-mobile-app-strategy-progressive-web-native/

https://www.coredna.com/blogs/progressive-web-app

--

--