SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
Exploring.Everyday
Title Text
Understand the Battle of Web vs Apps
What are Progressive Web Apps (PWA)?
Few Statistics on PWA
PWA Components
PWA Libraries
Product Demo
Agenda
Mobile Apps Everywhere - A Decade of Revolution!
» Higher Reach!
» Better Personalisation!
» High performant!
» Use mobile device features
» Ability to work offline!
» Affordable on devices which are cheaper!
» Most important, it gave a brand presence
Web is Dead! (2010)
Web is Dead! (2010)
» Web couldn’t support offline content like
apps.
» It couldn’t provide a mechanism to reach the
user through push notification
» It couldn’t be high performant.
» It couldn’t get few basic device related
functionalities
» It got buried inside the browser!
» To simply put, it couldn’t behave app like.
BUT THERE WERE SERIOUS PROBLEM STARTED ARISING
WITH APPS!
Drop in the Users
App Store View Download Open
100% 70% 65%
Apps became bulky!
Average size of the app became 7MB to 10MB.
App upgrades became costlier!
A typical user has a data usage of atleast 700MB - 1 GB from playstore!*
Maintenance
When there are multiple platforms, the maintenance became tough!
Implementing offline data
The developer has to take care of handling offline scenarios as the
networks were really flaky!
BIRTH OF PWA
Web isn’t Dead! (2016)
Progressive Web Apps are user experiences that
have the reach of the web, and are:
» Reliable - Load instantly and never show the
downasaur, even in uncertain network
conditions.
» Fast - Respond quickly to user interactions
with silky smooth animations and no janky
scrolling.
» Engaging - Feel like a natural app on the
device, with an immersive user experience
What are Progressive Web Apps?
» Progressive - Work for every user, regardless of
browser choice because they’re built with progressive
enhancement as a core tenet.
» Responsive - Fit any form factor: desktop, mobile,
tablet, or forms yet to emerge
» Connectivity independent - Service workers allow
work offline, or on low quality networks
» App-like - Feel like an app to the user with app-style
interactions and navigation.
» Fresh - Always up-to-date thanks to the service
worker update process.
PWA CHARACTERISTICS
» Safe - Served via HTTPS to prevent snooping and ensure
content hasn’t been tampered with.
» Discoverable - Are identifiable as “applications” thanks to
W3C manifests and service worker registration scope
allowing search engines to find them
» Re-engageable - Make re-engagement easy through
features like push notifications.
» Installable - Allow users to “keep” apps they find most
useful on their home screen without the hassle of an app
store
» Linkable - Easily shared via a URL and do not require
complex installation.
Interesting stats on PWA - Flipkart Lite!
» Users time on site with Flipkart lite vs. previous mobile experience: 3.5 minutes vs
70 seconds..
» 3x more time spent on site
» 40% higher re-engagement rate
» 70% greater conversion rate among those arriving via Add to Homescreen
» 3x lower data usage
More stats on PWA - Google I/O 2016 App
» More engagement than the native app (4:06 min mobile web vs. Android's 2:40
min).
» 450ms faster first paint for return users thanks to service worker caching
» 84% of visitors supported Service Worker
» 3.8% users went offline but continued to generate 11k pageviews!
HOW IT IS BEEN DONE?
APP MANIFEST
PWA COMPONENTS
SERVICE WORKER APPLICATION SHELL
App Manifest
» Used to create a icon in the home screen
of the phone.
» Contains the url for different sizes of icons
» Contains the background color for the app
» Contains the Name for the app
» Contains the start url for the app
{
"name": "Weather",
"short_name": "Weather",
"icons": [{
"src": "images/icons/icon-128x128.png",
"sizes": "128x128",
"type": "image/png"
},
.
.
.
{
"src": "images/icons/icon-256x256.png",
"sizes": "256x256",
"type": "image/png"
}],
"start_url": "/index.html",
"display": "standalone",
"background_color": "#3E4EB8",
"theme_color": "#2F3BA2"
}
<link rel="manifest" href="/manifest.json">
Service Worker
» Does caching of the App Shell - html/css/js in
the phone
» Update the Content in background
» Cache the dynamically served content in the
phone and returns it when required.
» Can inform the developer that whether the add
to home screen is clicked or not
» Gets the push notification id from the user to
send the notification.
» Invalidates the cache when needed!
Service Worker - Cache
// CACHE
self.addEventListener('install', function(e) {
console.log('[ServiceWorker] Install');
e.waitUntil(
caches.open(cacheName).then(function(cache) {
console.log('[ServiceWorker] Caching app shell');
return cache.addAll(filesToCache);
})
);
});
//FETCH
self.addEventListener('fetch', function(e) {
console.log('[ServiceWorker] Fetch', e.request.url);
e.respondWith(
caches.match(e.request).then(function(response) {
return response || fetch(e.request);
})
);
});
//FIRST STEP
if ('serviceWorker' in navigator) {
navigator.serviceWorker
.register('./service-worker.js')
.then(function() { console.log('Service Worker Registered'); });
}
var cacheName = 'weatherPWA-step-6-1';
var filesToCache = [];
Service Worker - Libraries
» sw-precache
» sw-toolbox
» sw-offline-google-analytics
sw-precache
Feature Summary
Precache Your App Shell Your web app's shell—its core HTML, JavaScript,
and CSS—can be precached when a user visits your
page.
Build-time Integration Drop it into your existing build process: Gulp, Grunt,
or command line.
Stay Fresh Changes in your build update the service worker
script. Users get updates, but you don't have to
manually version your content or caches.
No Network, No Problem Your static resources are served cache-first, quickly,
whether or not there's a network available.
sw-toolkit
Feature Summary
Runtime Caching Cache large or infrequently used resources, like
images, at runtime, when they're first used.
Offline Fallbacks Load fresh images, API responses, or other dynamic
content from the network while online, but fall back
to a cached placeholder while offline.
Goodbye Lie-Fi Fight lie-fi by automatically falling back to a cached
response when the network is too slow.
Battle Cache Bloat That image from last month doesn't need to be
cached forever. Least-recently used and age-based
cache expiration helps free up space.
sw-offline-google-analytics
Feature Summary
Offline Google Analytics Creates fetch handlers that ensure the Google
Analytics JavaScript is available offline.
Temporarily Caches Data Holds analytics requests that are made when the
device is offline and retries them the next time the
service worker starts up.
Custom Replay Values Key/value pairs to be added to replayed Google
Analytics requests. For example, you might set a
custom dimension to indicate that a request was
replayed.
Modified Hit Parameters Lets you programmatically modify a hit's parameters
to, for example, track the elapsed time between
when a hit is attempted and when it is replayed.
References
» PWA Developer Site
https://developers.google.com/web/progressive-web-apps/
» Lighthouse Chrome Plugin
To test the PWA score
No. 72 & 73, Krishna Reddy Colony,
Domlur, Bangalore - 560 071.
Sethuraman Vaideeswaran vaidee@divum.in
Prashant Gupta prashant.gupta@divum.in
Krishna S L krishna@divum.in
Muthanna P M muthanna@divum.in, +91-8197265056
Organising Committee Speakers Thanks to Supporters

Krishna S L
Vishnu Govind
Priyam Bose, Truecaller

Parul Soi, Google
Thank you

Weitere ähnliche Inhalte

Was ist angesagt?

Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and ReactMike Melusky
 
Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web AppBinh Bui
 
Introduction to Progressive Web Applications
Introduction to Progressive Web ApplicationsIntroduction to Progressive Web Applications
Introduction to Progressive Web ApplicationsChris Love
 
Progressive Web Applications
Progressive Web ApplicationsProgressive Web Applications
Progressive Web ApplicationsBartek Igielski
 
Mobile web or native app
Mobile web or native appMobile web or native app
Mobile web or native appMike Takahashi
 
PWA - Progressive Web App
PWA - Progressive Web AppPWA - Progressive Web App
PWA - Progressive Web AppRobert Robinson
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web AppsJana Moudrá
 
Progressive web apps with Angular 2
Progressive web apps with Angular 2Progressive web apps with Angular 2
Progressive web apps with Angular 2Manfred Steyer
 
Progressive Web Applications - The Next Gen Web Technologies
Progressive Web Applications - The Next Gen Web TechnologiesProgressive Web Applications - The Next Gen Web Technologies
Progressive Web Applications - The Next Gen Web TechnologiesGeekNightHyderabad
 
Progressive web apps
 Progressive web apps Progressive web apps
Progressive web appsNeha Sharma
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web AppsBill Stavroulakis
 
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...Robert Nyman
 
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
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web appsFastly
 
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
 
Offline-First Progressive Web Apps
Offline-First Progressive Web AppsOffline-First Progressive Web Apps
Offline-First Progressive Web AppsAditya Punjani
 
Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Abdelrahman Omran
 
Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing XBOSoft
 

Was ist angesagt? (20)

Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and React
 
Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web App
 
Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
Introduction to Progressive Web Applications
Introduction to Progressive Web ApplicationsIntroduction to Progressive Web Applications
Introduction to Progressive Web Applications
 
Progressive Web Applications
Progressive Web ApplicationsProgressive Web Applications
Progressive Web Applications
 
Mobile web or native app
Mobile web or native appMobile web or native app
Mobile web or native app
 
PWA - Progressive Web App
PWA - Progressive Web AppPWA - Progressive Web App
PWA - Progressive Web App
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Progressive web apps with Angular 2
Progressive web apps with Angular 2Progressive web apps with Angular 2
Progressive web apps with Angular 2
 
Progressive Web Applications - The Next Gen Web Technologies
Progressive Web Applications - The Next Gen Web TechnologiesProgressive Web Applications - The Next Gen Web Technologies
Progressive Web Applications - The Next Gen Web Technologies
 
Progressive web apps
 Progressive web apps Progressive web apps
Progressive web apps
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web Apps
 
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
The web - What it has, what it lacks and where it must go - Bulgaria Web Summ...
 
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...
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
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 ...
 
Offline-First Progressive Web Apps
Offline-First Progressive Web AppsOffline-First Progressive Web Apps
Offline-First Progressive Web Apps
 
Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016
 
New trends on web platform
New trends on web platformNew trends on web platform
New trends on web platform
 
Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing Mobile Device Client Application Performance Testing
Mobile Device Client Application Performance Testing
 

Andere mochten auch

Progressive Web Apps - Lightning Talk
Progressive Web Apps - Lightning TalkProgressive Web Apps - Lightning Talk
Progressive Web Apps - Lightning TalkTimmy Kokke
 
PWA 101
PWA 101PWA 101
PWA 101m_catt
 
Progressive Web Apps [pt_BR]
Progressive Web Apps [pt_BR]Progressive Web Apps [pt_BR]
Progressive Web Apps [pt_BR]Evandro Santos
 
PWA e Hybrid App VS Native
PWA e Hybrid App VS NativePWA e Hybrid App VS Native
PWA e Hybrid App VS NativeAlberto Abruzzo
 
Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)Zhentian Wan
 
Progressive web apps
Progressive web apps Progressive web apps
Progressive web apps Biko
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web AppMike North
 
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
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web AppIdo Green
 

Andere mochten auch (10)

Progressive Web Apps - Lightning Talk
Progressive Web Apps - Lightning TalkProgressive Web Apps - Lightning Talk
Progressive Web Apps - Lightning Talk
 
PWA 101
PWA 101PWA 101
PWA 101
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Web Apps [pt_BR]
Progressive Web Apps [pt_BR]Progressive Web Apps [pt_BR]
Progressive Web Apps [pt_BR]
 
PWA e Hybrid App VS Native
PWA e Hybrid App VS NativePWA e Hybrid App VS Native
PWA e Hybrid App VS Native
 
Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)Introduction to Progressive web app (PWA)
Introduction to Progressive web app (PWA)
 
Progressive web apps
Progressive web apps Progressive web apps
Progressive web apps
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App
 
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
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
 

Ähnlich wie Progressive Web Apps - NPD Meet

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 app PWA - il futuro del web
Progressive web app PWA - il futuro del webProgressive web app PWA - il futuro del web
Progressive web app PWA - il futuro del webAngelo Gino Varrati
 
Make your PWA feel more like an app
Make your PWA feel more like an appMake your PWA feel more like an app
Make your PWA feel more like an appÖnder Ceylan
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web AppSankalp Khandelwal
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friendsAntonio Peric-Mazar
 
Building cross platform web apps
Building cross platform web appsBuilding cross platform web apps
Building cross platform web appsITEM
 
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
 
An introduction to Progressive Web Apps
An introduction to Progressive Web AppsAn introduction to Progressive Web Apps
An introduction to Progressive Web AppsKevin Farrugia
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopwareSander Mangel
 
Why Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandWhy Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandImran Sayed
 
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
 
Progressive web app testing
Progressive web app testingProgressive web app testing
Progressive web app testingKalhan Liyanage
 
Offline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and ReactOffline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and ReactIlia Idakiev
 
Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020Imran Sayed
 
SEMINAR (pwa).pptx
SEMINAR (pwa).pptxSEMINAR (pwa).pptx
SEMINAR (pwa).pptxBasitMir10
 

Ähnlich wie Progressive Web Apps - NPD Meet (20)

Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
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 app PWA - il futuro del web
Progressive web app PWA - il futuro del webProgressive web app PWA - il futuro del web
Progressive web app PWA - il futuro del web
 
Make your PWA feel more like an app
Make your PWA feel more like an appMake your PWA feel more like an app
Make your PWA feel more like an app
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friends
 
Building cross platform web apps
Building cross platform web appsBuilding cross platform web apps
Building cross platform web apps
 
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
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
 
An introduction to Progressive Web Apps
An introduction to Progressive Web AppsAn introduction to Progressive Web Apps
An introduction to Progressive Web Apps
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware
 
Why Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandWhy Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp Finland
 
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
 
Progressive web app testing
Progressive web app testingProgressive web app testing
Progressive web app testing
 
Service worker API
Service worker APIService worker API
Service worker API
 
Offline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and ReactOffline progressive web apps with NodeJS and React
Offline progressive web apps with NodeJS and React
 
Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020Why progressive apps for WordPress - WordSesh 2020
Why progressive apps for WordPress - WordSesh 2020
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
SEMINAR (pwa).pptx
SEMINAR (pwa).pptxSEMINAR (pwa).pptx
SEMINAR (pwa).pptx
 

Kürzlich hochgeladen

FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRnishacall1
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceanilsa9823
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Pooja Nehwal
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7Pooja Nehwal
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPsychicRuben LoveSpells
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceanilsa9823
 

Kürzlich hochgeladen (7)

FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCRFULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
 
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Gomti Nagar Lucknow best Night Fun service
 
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 71 Noida Escorts >༒8448380779 Escort Service
 
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
Call US Pooja 9892124323 ✓Call Girls In Mira Road ( Mumbai ) secure service,
 
9892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x79892124323 | Book Call Girls in Juhu and escort services 24x7
9892124323 | Book Call Girls in Juhu and escort services 24x7
 
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost LoverPowerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
Powerful Love Spells in Arkansas, AR (310) 882-6330 Bring Back Lost Lover
 
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual serviceCALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
CALL ON ➥8923113531 🔝Call Girls Saharaganj Lucknow best sexual service
 

Progressive Web Apps - NPD Meet

  • 2. Title Text Understand the Battle of Web vs Apps What are Progressive Web Apps (PWA)? Few Statistics on PWA PWA Components PWA Libraries Product Demo Agenda
  • 3. Mobile Apps Everywhere - A Decade of Revolution! » Higher Reach! » Better Personalisation! » High performant! » Use mobile device features » Ability to work offline! » Affordable on devices which are cheaper! » Most important, it gave a brand presence
  • 4. Web is Dead! (2010)
  • 5. Web is Dead! (2010) » Web couldn’t support offline content like apps. » It couldn’t provide a mechanism to reach the user through push notification » It couldn’t be high performant. » It couldn’t get few basic device related functionalities » It got buried inside the browser! » To simply put, it couldn’t behave app like.
  • 6. BUT THERE WERE SERIOUS PROBLEM STARTED ARISING WITH APPS!
  • 7. Drop in the Users App Store View Download Open 100% 70% 65%
  • 8. Apps became bulky! Average size of the app became 7MB to 10MB.
  • 9. App upgrades became costlier! A typical user has a data usage of atleast 700MB - 1 GB from playstore!*
  • 10. Maintenance When there are multiple platforms, the maintenance became tough!
  • 11. Implementing offline data The developer has to take care of handling offline scenarios as the networks were really flaky!
  • 14. Progressive Web Apps are user experiences that have the reach of the web, and are: » Reliable - Load instantly and never show the downasaur, even in uncertain network conditions. » Fast - Respond quickly to user interactions with silky smooth animations and no janky scrolling. » Engaging - Feel like a natural app on the device, with an immersive user experience What are Progressive Web Apps?
  • 15. » Progressive - Work for every user, regardless of browser choice because they’re built with progressive enhancement as a core tenet. » Responsive - Fit any form factor: desktop, mobile, tablet, or forms yet to emerge » Connectivity independent - Service workers allow work offline, or on low quality networks » App-like - Feel like an app to the user with app-style interactions and navigation. » Fresh - Always up-to-date thanks to the service worker update process. PWA CHARACTERISTICS » Safe - Served via HTTPS to prevent snooping and ensure content hasn’t been tampered with. » Discoverable - Are identifiable as “applications” thanks to W3C manifests and service worker registration scope allowing search engines to find them » Re-engageable - Make re-engagement easy through features like push notifications. » Installable - Allow users to “keep” apps they find most useful on their home screen without the hassle of an app store » Linkable - Easily shared via a URL and do not require complex installation.
  • 16. Interesting stats on PWA - Flipkart Lite! » Users time on site with Flipkart lite vs. previous mobile experience: 3.5 minutes vs 70 seconds.. » 3x more time spent on site » 40% higher re-engagement rate » 70% greater conversion rate among those arriving via Add to Homescreen » 3x lower data usage
  • 17. More stats on PWA - Google I/O 2016 App » More engagement than the native app (4:06 min mobile web vs. Android's 2:40 min). » 450ms faster first paint for return users thanks to service worker caching » 84% of visitors supported Service Worker » 3.8% users went offline but continued to generate 11k pageviews!
  • 18. HOW IT IS BEEN DONE?
  • 19. APP MANIFEST PWA COMPONENTS SERVICE WORKER APPLICATION SHELL
  • 20. App Manifest » Used to create a icon in the home screen of the phone. » Contains the url for different sizes of icons » Contains the background color for the app » Contains the Name for the app » Contains the start url for the app { "name": "Weather", "short_name": "Weather", "icons": [{ "src": "images/icons/icon-128x128.png", "sizes": "128x128", "type": "image/png" }, . . . { "src": "images/icons/icon-256x256.png", "sizes": "256x256", "type": "image/png" }], "start_url": "/index.html", "display": "standalone", "background_color": "#3E4EB8", "theme_color": "#2F3BA2" } <link rel="manifest" href="/manifest.json">
  • 21. Service Worker » Does caching of the App Shell - html/css/js in the phone » Update the Content in background » Cache the dynamically served content in the phone and returns it when required. » Can inform the developer that whether the add to home screen is clicked or not » Gets the push notification id from the user to send the notification. » Invalidates the cache when needed!
  • 22. Service Worker - Cache // CACHE self.addEventListener('install', function(e) { console.log('[ServiceWorker] Install'); e.waitUntil( caches.open(cacheName).then(function(cache) { console.log('[ServiceWorker] Caching app shell'); return cache.addAll(filesToCache); }) ); }); //FETCH self.addEventListener('fetch', function(e) { console.log('[ServiceWorker] Fetch', e.request.url); e.respondWith( caches.match(e.request).then(function(response) { return response || fetch(e.request); }) ); }); //FIRST STEP if ('serviceWorker' in navigator) { navigator.serviceWorker .register('./service-worker.js') .then(function() { console.log('Service Worker Registered'); }); } var cacheName = 'weatherPWA-step-6-1'; var filesToCache = [];
  • 23. Service Worker - Libraries » sw-precache » sw-toolbox » sw-offline-google-analytics
  • 24. sw-precache Feature Summary Precache Your App Shell Your web app's shell—its core HTML, JavaScript, and CSS—can be precached when a user visits your page. Build-time Integration Drop it into your existing build process: Gulp, Grunt, or command line. Stay Fresh Changes in your build update the service worker script. Users get updates, but you don't have to manually version your content or caches. No Network, No Problem Your static resources are served cache-first, quickly, whether or not there's a network available.
  • 25. sw-toolkit Feature Summary Runtime Caching Cache large or infrequently used resources, like images, at runtime, when they're first used. Offline Fallbacks Load fresh images, API responses, or other dynamic content from the network while online, but fall back to a cached placeholder while offline. Goodbye Lie-Fi Fight lie-fi by automatically falling back to a cached response when the network is too slow. Battle Cache Bloat That image from last month doesn't need to be cached forever. Least-recently used and age-based cache expiration helps free up space.
  • 26. sw-offline-google-analytics Feature Summary Offline Google Analytics Creates fetch handlers that ensure the Google Analytics JavaScript is available offline. Temporarily Caches Data Holds analytics requests that are made when the device is offline and retries them the next time the service worker starts up. Custom Replay Values Key/value pairs to be added to replayed Google Analytics requests. For example, you might set a custom dimension to indicate that a request was replayed. Modified Hit Parameters Lets you programmatically modify a hit's parameters to, for example, track the elapsed time between when a hit is attempted and when it is replayed.
  • 27. References » PWA Developer Site https://developers.google.com/web/progressive-web-apps/ » Lighthouse Chrome Plugin To test the PWA score
  • 28. No. 72 & 73, Krishna Reddy Colony, Domlur, Bangalore - 560 071. Sethuraman Vaideeswaran vaidee@divum.in Prashant Gupta prashant.gupta@divum.in Krishna S L krishna@divum.in Muthanna P M muthanna@divum.in, +91-8197265056 Organising Committee Speakers Thanks to Supporters
 Krishna S L Vishnu Govind Priyam Bose, Truecaller
 Parul Soi, Google