SlideShare a Scribd company logo
1 of 60
Basic Understanding of Progressive
Web Apps
Anjali Tanpure
Software Engineer @Niyuj
Technical Blogger on Medium
Medium: https://medium.com/@tanpure.anjali
Twitter: https://twitter.com/anjali_tanpure
LinkedIn: https://www.linkedin.com/in/anjali-tanpure-35b8b6106/
Agenda
1. History and Idea behind PWA
2. What is PWA ?
3. PWA Pillars
4. Why PWA ?
5. Core building blocks
6. Demo time
7. Measure Performance
8. Case Studies
9. Limitations
“You can write amazing Web 2.0 and Ajax apps that look exactly and behave
exactly like apps on the iPhone. There’s no SDK that you need for these apps!
You’ve got everything you need if you know how to write apps using the most
modern web standards to write amazing apps for the iPhone today.”
- Steve Jobs (2007)
Source: https://divante.com/pwabook/
Alex Russell, Senior Staff Software Engineer at Google, pointed out in his text
“Progressive Web Apps: Escaping Tabs Without Losing Our Soul ”, published on
Infrequently.org in July 2015.
A year later in 2016, during the Google IO conference, Eric Bidelman, Senior
Staff Developers Programs Engineer, introduced “Progressive Web Apps as a
new standard in web development".
Source: https://divante.com/pwabook/
Idea Behind PWA
Universality
Websites
Web App
Single Page Applications (SPA’s)
Responsive Web Applications
Progressive Web Applications ?
Web
● Can run on any device
● Quick to open and use
● Open from the browser
● Always runs in the browser
● Always runs in a tab
● Probably won’t work offline
● Might Not optimised for the
device
● Linkable
● Approach - “I use this”
Native Apps
● Usually ecosystem-specific
● Download and install
● Open from launcher/file
● [Feels like it] runs from its own
● Has its own window
● Usually works fine offline
● Powerful capabilities or system
access
● Not linkable
● Approach - “I own this”
PWA: The best of both worlds
What are Progressive Web Apps ?
Progressively enhance web apps
To look & feel like native apps
● New software development methodology
● Combines features offered by most modern browsers with the benefits
of mobile experience
● Are a type of mobile app delivered through the web, built using
common web technologies including HTML, CSS and JavaScript
● They are intended to work on any platform that uses a standards-
compliant browser.
● Feels like an app, works like a website. Faster, lighter & personalized.
According to creator of the term PWA (2015) -
“These apps aren’t packaged and deployed through stores, they’re
just websites that took right vitamins.
They progressively becomes apps…”
- Russell Alex (Google)
How we install it ?
1. It starts as a normal web page in a browser, and as a user explores the
webpage, they get the prompt if they would like to “Add to Home
Screen”
2. Once the user gives the thumbs up to this prompt, PWA gets added to
their home screen
3. Once open from the home screen, it can even hide the browser UI
controls and appear as an app
PWA now available via Google Play Store (2019)
Pillars transform web into an
experience that feels like a native
application.
Reliable Fast
Engaging Integrated
Source: https://developers.google.com/web/fundamentals
Why PWA ?
Mobile users are spending 87 % of their time in apps, versus
just 13 % on the web.
Source: https://www.comscore.com
Users spend 50 % of their time in one app & 97 % in their
top 10 apps.
Source: https://www.comscore.com
Source: https://www.comscore.com
No downloading from app/play store, no waiting
One-size-fits-all
Native app functionality
● Access device features like camera, location etc
● Improved performance
● Easy maintainable (cost, time optimization)
● Offline functionality using service workers
● Security
Progressive Web App vs. Native App
Core Building Blocks
HTTPS + Service Worker + Web App Manifest = Progressive Web App
Web App Manifest
{
"lang": "en",
"dir": "ltr"
"name": "The Air Horner",
"description": "This app helps you donate to worthy causes.",
"icons": [
{ "src": "images/icon.png", "sizes": "192x192"},
{ "src": "images/icon2.png", "sizes": "512x512"} ],
"scope": ".",
"start_url": "/index.html",
"orientation": "landscape",
"theme_color": "aliceblue",
"background_color": "red",
}
Criteria to Add to Home Screen
● The web app is not already installed from same browser
● Meets a user engagement heuristic (currently, the user has interacted
with the domain for at least 30 seconds)
● Includes a web app manifest that includes:
○ short_name or name
○ icons must include a 192px and a 512px sized icons
○ start_url
○ display must be one of: fullscreen, standalone, or minimal-ui
● Served over HTTPS (required for service workers)
● Has registered a service worker with a fetch event handler
Web App
Manifest: Splash
Screen
Service Workers
✓ Reliable and intelligent caching
✓ Background content updating
✓ Web push notifications
✓ Most attractive offline functionality to prior visited sites
Service worker lifecycle
Demo Time !
Implementation of PWA With Angular
1. Create the project with Angular CLI
1. Add package: ng add @angular/pwa
1. Edit the manifest file: short_name or name, display, start_url, icon
2. Edit the service worker config file: ngsw-config.json has been created
at the root of your project. In it you can specify which files to prefetch
or lazy load when downloading a version of your PWA.
3. Noticing users about updates
Measure Performance -Lighthouse
Browser Support
App Manifest
Source: https://caniuse.com
Service Workers
Case Studies
3X
More time spent on site
+70 %
Higher conversion rate among those arriving via
Add to Homescreen
+40 %
Higher re-engagement rate
3X
Lower data usage
+65%
Increase in pages per session
+75 %
Increase in Tweets sent
20%
Decrease in bounce rate
30%
Average load time reduced
3X
Improvement in conversion rate
+38 %
Improvement in page load times
+160 %
Increase in shopper sessions
20%
Lower the bounce rate
And many more…
● Filpkart-lite
● BookMyShow
● Ola
● Alibaba
● Twitter Lite
● AliExpress
● The Weather Channel
● MakeMyTrip
● Housing.com
● OLX
● Voot
● Trivago
● Pinterest
Limitations
● Web still does not have access to full hardware of device, unlike native
apps
● Support is good in modern browsers, but do not in legacy ones
● Limited Legitimacy
● Cross Application Login Support
● App stops working if respective browsers is uninstalled or disabled
● Adds multiple icons if accessed from different browsers from same
device
Resources
● https://developers.google.com/web/progressive-web-apps/
● https://www.youtube.com/playlist?list=PLNYkxOF6rcIB2xHBZ7opgc2Mv009X
87Hh
● https://codelabs.developers.google.com/dev-pwa-training/
● https://medium.com/@tanpure.anjali/pwa-add-to-home-screen-from-
different-browsers-be8fd0c1be5b
● https://medium.com/@tanpure.anjali/pwa-web-push-notifications-
overview-implementation-6539cd9530ed
Thanks :)

More Related Content

What's hot

Progressive web apps
Progressive web appsProgressive web apps
Progressive web appsSuraj Kumar
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web AppsJana Moudrá
 
Guidance on how to develop a progressive web app using react native!
Guidance on how to develop a progressive web app using react native!Guidance on how to develop a progressive web app using react native!
Guidance on how to develop a progressive web app using react native!Shelly Megan
 
Progressive Web Applications
Progressive Web ApplicationsProgressive Web Applications
Progressive Web ApplicationsBartek Igielski
 
My learnings on web performance optimization while building a Progressive Web...
My learnings on web performance optimization while building a Progressive Web...My learnings on web performance optimization while building a Progressive Web...
My learnings on web performance optimization while building a Progressive Web...Narendra Shetty
 
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWAIdo Green
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web AppSubodh Garg
 
Pwa demystified
Pwa demystifiedPwa demystified
Pwa demystifiededynamic
 
Progressive Web Apps For Startups
Progressive Web Apps For StartupsProgressive Web Apps For Startups
Progressive Web Apps For StartupsIdo Green
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web appsTimmy Kokke
 
Progressive Web App (feat. React, Django)
Progressive Web App (feat. React, Django)Progressive Web App (feat. React, Django)
Progressive Web App (feat. React, Django)Yurim Jin
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web appsFastly
 
Why Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessWhy Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessLets Grow Business
 
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...Robert Nyman
 
Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web AppBinh Bui
 
Progressive web apps
 Progressive web apps Progressive web apps
Progressive web appsNeha Sharma
 

What's hot (20)

Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Guidance on how to develop a progressive web app using react native!
Guidance on how to develop a progressive web app using react native!Guidance on how to develop a progressive web app using react native!
Guidance on how to develop a progressive web app using react native!
 
Progressive Web Applications
Progressive Web ApplicationsProgressive Web Applications
Progressive Web Applications
 
Progressive Web Apps(PWA)
Progressive Web Apps(PWA)Progressive Web Apps(PWA)
Progressive Web Apps(PWA)
 
My learnings on web performance optimization while building a Progressive Web...
My learnings on web performance optimization while building a Progressive Web...My learnings on web performance optimization while building a Progressive Web...
My learnings on web performance optimization while building a Progressive Web...
 
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWA
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Pwa demystified
Pwa demystifiedPwa demystified
Pwa demystified
 
Progressive Web Apps For Startups
Progressive Web Apps For StartupsProgressive Web Apps For Startups
Progressive Web Apps For Startups
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Web App (feat. React, Django)
Progressive Web App (feat. React, Django)Progressive Web App (feat. React, Django)
Progressive Web App (feat. React, Django)
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Why Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessWhy Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your Business
 
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
Introduction to Progressive Web Apps, Google Developer Summit, Seoul - South ...
 
Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web App
 
Progressive Web-App (PWA)
Progressive Web-App (PWA)Progressive Web-App (PWA)
Progressive Web-App (PWA)
 
Progressive web apps
 Progressive web apps Progressive web apps
Progressive web apps
 

Similar to Basic Understanding of Progressive Web Apps

Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps   Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps Ashish Saxena
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web AppSankalp Khandelwal
 
PWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
PWA ( Progressive Web Apps ) - Sai Kiran KasireddyPWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
PWA ( Progressive Web Apps ) - Sai Kiran KasireddySai Kiran Kasireddy
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web appsAkshay Sharma
 
progressive web app
 progressive web app progressive web app
progressive web appRAGINI .
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET Journal
 
Progressive web app testing
Progressive web app testingProgressive web app testing
Progressive web app testingKalhan Liyanage
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web AppJason Grigsby
 
The Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.pptThe Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.pptAsad Majeed
 
SEMINAR (pwa).pptx
SEMINAR (pwa).pptxSEMINAR (pwa).pptx
SEMINAR (pwa).pptxBasitMir10
 
A Complete Guide To Progressive Web App.pdf
A Complete Guide To Progressive Web App.pdfA Complete Guide To Progressive Web App.pdf
A Complete Guide To Progressive Web App.pdfCerebrum Infotech
 
Progressive web apps for e commerce
Progressive web apps for e commerceProgressive web apps for e commerce
Progressive web apps for e commerceShantanuApurva1
 
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile PresenceGo for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile PresenceMagic Software
 
An introduction to Progressive Web Apps
An introduction to Progressive Web AppsAn introduction to Progressive Web Apps
An introduction to Progressive Web AppsKevin Farrugia
 

Similar to Basic Understanding of Progressive Web Apps (20)

Progressive Web Apps - NPD Meet
Progressive Web Apps - NPD MeetProgressive Web Apps - NPD Meet
Progressive Web Apps - NPD Meet
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps   Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
 
PWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
PWA ( Progressive Web Apps ) - Sai Kiran KasireddyPWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
PWA ( Progressive Web Apps ) - Sai Kiran Kasireddy
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
progressive web app
 progressive web app progressive web app
progressive web app
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
 
New trends on web platform
New trends on web platformNew trends on web platform
New trends on web platform
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
IRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of thingsIRJET-Garbage Monitoring and Management using Internet of things
IRJET-Garbage Monitoring and Management using Internet of things
 
Progressive web app testing
Progressive web app testingProgressive web app testing
Progressive web app testing
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
 
The Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.pptThe Ultimate Guide to Modern Web App Development.ppt
The Ultimate Guide to Modern Web App Development.ppt
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
SEMINAR (pwa).pptx
SEMINAR (pwa).pptxSEMINAR (pwa).pptx
SEMINAR (pwa).pptx
 
A Complete Guide To Progressive Web App.pdf
A Complete Guide To Progressive Web App.pdfA Complete Guide To Progressive Web App.pdf
A Complete Guide To Progressive Web App.pdf
 
Progressive web apps for e commerce
Progressive web apps for e commerceProgressive web apps for e commerce
Progressive web apps for e commerce
 
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile PresenceGo for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
 
An introduction to Progressive Web Apps
An introduction to Progressive Web AppsAn introduction to Progressive Web Apps
An introduction to Progressive Web Apps
 

Recently uploaded

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Basic Understanding of Progressive Web Apps

  • 1. Basic Understanding of Progressive Web Apps
  • 2. Anjali Tanpure Software Engineer @Niyuj Technical Blogger on Medium Medium: https://medium.com/@tanpure.anjali Twitter: https://twitter.com/anjali_tanpure LinkedIn: https://www.linkedin.com/in/anjali-tanpure-35b8b6106/
  • 3. Agenda 1. History and Idea behind PWA 2. What is PWA ? 3. PWA Pillars 4. Why PWA ? 5. Core building blocks 6. Demo time 7. Measure Performance 8. Case Studies 9. Limitations
  • 4. “You can write amazing Web 2.0 and Ajax apps that look exactly and behave exactly like apps on the iPhone. There’s no SDK that you need for these apps! You’ve got everything you need if you know how to write apps using the most modern web standards to write amazing apps for the iPhone today.” - Steve Jobs (2007) Source: https://divante.com/pwabook/
  • 5. Alex Russell, Senior Staff Software Engineer at Google, pointed out in his text “Progressive Web Apps: Escaping Tabs Without Losing Our Soul ”, published on Infrequently.org in July 2015. A year later in 2016, during the Google IO conference, Eric Bidelman, Senior Staff Developers Programs Engineer, introduced “Progressive Web Apps as a new standard in web development". Source: https://divante.com/pwabook/
  • 7. Websites Web App Single Page Applications (SPA’s) Responsive Web Applications Progressive Web Applications ?
  • 8. Web ● Can run on any device ● Quick to open and use ● Open from the browser ● Always runs in the browser ● Always runs in a tab ● Probably won’t work offline ● Might Not optimised for the device ● Linkable ● Approach - “I use this” Native Apps ● Usually ecosystem-specific ● Download and install ● Open from launcher/file ● [Feels like it] runs from its own ● Has its own window ● Usually works fine offline ● Powerful capabilities or system access ● Not linkable ● Approach - “I own this”
  • 9. PWA: The best of both worlds
  • 10.
  • 11. What are Progressive Web Apps ?
  • 12. Progressively enhance web apps To look & feel like native apps
  • 13. ● New software development methodology ● Combines features offered by most modern browsers with the benefits of mobile experience ● Are a type of mobile app delivered through the web, built using common web technologies including HTML, CSS and JavaScript ● They are intended to work on any platform that uses a standards- compliant browser. ● Feels like an app, works like a website. Faster, lighter & personalized.
  • 14. According to creator of the term PWA (2015) - “These apps aren’t packaged and deployed through stores, they’re just websites that took right vitamins. They progressively becomes apps…” - Russell Alex (Google)
  • 16. 1. It starts as a normal web page in a browser, and as a user explores the webpage, they get the prompt if they would like to “Add to Home Screen” 2. Once the user gives the thumbs up to this prompt, PWA gets added to their home screen 3. Once open from the home screen, it can even hide the browser UI controls and appear as an app PWA now available via Google Play Store (2019)
  • 17.
  • 18. Pillars transform web into an experience that feels like a native application.
  • 19. Reliable Fast Engaging Integrated Source: https://developers.google.com/web/fundamentals
  • 21.
  • 22. Mobile users are spending 87 % of their time in apps, versus just 13 % on the web. Source: https://www.comscore.com
  • 23. Users spend 50 % of their time in one app & 97 % in their top 10 apps. Source: https://www.comscore.com
  • 25.
  • 26.
  • 27. No downloading from app/play store, no waiting
  • 30. ● Access device features like camera, location etc ● Improved performance ● Easy maintainable (cost, time optimization) ● Offline functionality using service workers ● Security
  • 31. Progressive Web App vs. Native App
  • 33. HTTPS + Service Worker + Web App Manifest = Progressive Web App
  • 35. { "lang": "en", "dir": "ltr" "name": "The Air Horner", "description": "This app helps you donate to worthy causes.", "icons": [ { "src": "images/icon.png", "sizes": "192x192"}, { "src": "images/icon2.png", "sizes": "512x512"} ], "scope": ".", "start_url": "/index.html", "orientation": "landscape", "theme_color": "aliceblue", "background_color": "red", }
  • 36.
  • 37. Criteria to Add to Home Screen ● The web app is not already installed from same browser ● Meets a user engagement heuristic (currently, the user has interacted with the domain for at least 30 seconds) ● Includes a web app manifest that includes: ○ short_name or name ○ icons must include a 192px and a 512px sized icons ○ start_url ○ display must be one of: fullscreen, standalone, or minimal-ui ● Served over HTTPS (required for service workers) ● Has registered a service worker with a fetch event handler
  • 40.
  • 41.
  • 42.
  • 43. ✓ Reliable and intelligent caching ✓ Background content updating ✓ Web push notifications ✓ Most attractive offline functionality to prior visited sites
  • 46. Implementation of PWA With Angular 1. Create the project with Angular CLI 1. Add package: ng add @angular/pwa 1. Edit the manifest file: short_name or name, display, start_url, icon 2. Edit the service worker config file: ngsw-config.json has been created at the root of your project. In it you can specify which files to prefetch or lazy load when downloading a version of your PWA. 3. Noticing users about updates
  • 48.
  • 53. 3X More time spent on site +70 % Higher conversion rate among those arriving via Add to Homescreen +40 % Higher re-engagement rate 3X Lower data usage
  • 54. +65% Increase in pages per session +75 % Increase in Tweets sent 20% Decrease in bounce rate 30% Average load time reduced
  • 55. 3X Improvement in conversion rate +38 % Improvement in page load times +160 % Increase in shopper sessions 20% Lower the bounce rate
  • 56. And many more… ● Filpkart-lite ● BookMyShow ● Ola ● Alibaba ● Twitter Lite ● AliExpress ● The Weather Channel ● MakeMyTrip ● Housing.com ● OLX ● Voot ● Trivago ● Pinterest
  • 58. ● Web still does not have access to full hardware of device, unlike native apps ● Support is good in modern browsers, but do not in legacy ones ● Limited Legitimacy ● Cross Application Login Support ● App stops working if respective browsers is uninstalled or disabled ● Adds multiple icons if accessed from different browsers from same device
  • 59. Resources ● https://developers.google.com/web/progressive-web-apps/ ● https://www.youtube.com/playlist?list=PLNYkxOF6rcIB2xHBZ7opgc2Mv009X 87Hh ● https://codelabs.developers.google.com/dev-pwa-training/ ● https://medium.com/@tanpure.anjali/pwa-add-to-home-screen-from- different-browsers-be8fd0c1be5b ● https://medium.com/@tanpure.anjali/pwa-web-push-notifications- overview-implementation-6539cd9530ed

Editor's Notes

  1. Source: https://divante.com/pwabook/chapter/02-the-history-of-pwas
  2. Source: https://divante.com/pwabook/chapter/02-the-history-of-pwas
  3. Taken from : Going Big: PWAs Come to Desktop and Chrome OS (Google I/O ’19)
  4. Source: https://www.comscore.com
  5. PWAs can be accessed on any browser including Google Chrome, UC Browser, Opera Mini, Mozilla Firefox, etc. Therefore, we can make them work across all browsers or any specific one of your choice that brings in more traffic to your ecommerce site.
  6. We need to make three technical enhancements to the typical website to turn into PWA: HTTPS: Site is served over secure connection (HTTPS) & no mixed contents Service Workers: Script the browser runs in the background Application Manifest: Metadata provided for Add to Home screen Responsive Design: Layout should work & look good across devices
  7. When your app first launches, it can take a moment for the browser to spin up, and the initial content to begin rendering. Instead of showing a white screen that may look to the user like the app is stall, Chrome will show a splash screen, until the first paint Chrome will automatically create the splash screen from the manifest properties, including: name background_color Icons
  8. Lighthouse is an open-source, automated tool for improving the performance, quality, and correctness of your web apps It has audits for performance, accessibility, progressive web apps, and more It runs a series of audits against the page, and then it generates a report on how well the page did
  9. https://caniuse.com
  10. Source: https://caniuse.com
  11. MakeMyTrip.com
  12. MakeMyTrip.com