SlideShare a Scribd company logo
Progressive Web App (PWA)
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
“Progressive Web Apps (PWAs) are web applications that load like regular web pages or websites but can offer the user
functionality such as working offline, push notifications, and device hardware access traditionally available only to native
mobile applications. PWAs are an emerging technology that combine the open standards of the web offered by modern
browsers to provide benefits of a rich mobile experience”
• Progressive: It works for every user(independent of browser choice ) there by reduced load time to the least possible
minimum( i.e. <3sec)
• Web App: In terms of look and feel on the choice of device. Will give the experience like an native mobile app since we
can add as an icon to home screen.
Affordable mobile web app @ no cost( in development / deployment / maintenance )
• A Progressive Web App works in the browser so there is no need for specialized development.PWA’s fit all kinds of
tablets, laptops or smartphones due to the use of responsive web design techniques..
• Works in low connectivity even when offline.
• PWA saved 88% of time to load the first content and meaningful paint and thus reduced load time less than 3 seconds.
• PWAs allow websites to be added to home screens on mobile devices and receive push notifications.
• Security is ensured in PWA since HTTPS hoisting.
• No need to download/update from app store( some apps are paid ).
Progressive Web App
Progressive Web App
HTTPS App Manifest Service Workers
Progressive Web App
• An app manifest file should describe the
resources your app will need. This includes
your app’s displayed name, icons, as well as
splash screen. If you link to the manifest file in
your index.html, browsers will detect that and
load the resources for you.
• The minimal HTML, CSS, and JavaScript and
any other static resources that provide the
structure for your page, minus the actual
content specific to the page.
{
"name": "service-worker",
"short_name": "sw-demo",
"theme_color": "#1976d2",
"background_color": "#fafafa",
"display": "standalone",
"scope": "/",
"start_url": "/",
"icons": [
{
"src": "assets/icons/icon-72x72.png",
"sizes": "72x72",
"type": "image/png"
}, …
]
}
12
• short_name is used on the user's home screen, launcher, or other places
where space may be limited
• name is used in the app install
• theme_color is used on the user's home screen, launcher, or other places
where space may be limited•The background_color property is used on the splash screen when the
application is first launched.• display property Opens the web app to look and feel like a standalone
native app. The app runs in its own window, separate from the browser, and
hides standard browser UI elements like the URL bar, etc.
• Browser will automatically scale the icon for the device.
13
• The worker thread can perform tasks
without interfering with the user
interface.
• In addition, they can perform I/O using
XMLHttpRequest (although the
responseXML and channel attributes
are always null). Once created, a
worker can send messages to the
JavaScript code that created it by
posting messages to an event handler
specified by that code (and vice versa.)
“Web Workers is a simple means for web content to run scripts in background threads”
• We will be demoing them how
an application behaves with and
without web worker.
• Demo URL :
https://web-worker-
ff594.firebaseapp.com/
15
• Service worker could be mentioned in Offline Support, but
it really deserves its own section. Service worker provides a
programmatic way to cache app resources. Be it JavaScript
files or JSON data from a HTTP request. The programmatic
API allows developers to decide how to handle caching and
provides a much more flexible experience than other
options
• Service workers essentially act as proxy servers that sit
between web applications, the browser, and the network
(when available). They are intended, among other things,
to enable the creation of effective offline experiences,
intercept network requests and take appropriate action
based on whether the network is available, and update
assets residing on the server. They will also allow access to
push notifications and background sync APIs.
“A Service Worker is just a javascript file that runs in the background. A
service worker is a type of web worker ”
• We will develop a basic
angular app with PWA
implemented.
• Demo URL:
https://sw-demo-
236f8.firebaseapp.com/
17
18
Progressive Web App
BROW
SER
LIMIT
Chrom
e
<6% of free
space
Firefox <10% of free
space
Safari <50MB
IE10 <250MB
Edge Dependent on
volume size
Progressive Web App
Progressive Web App
“Cache-First strategy is to check the cache before going to the network.
This is great for caching on the fly and optimizing for repetitive asset
requests since it only hits the network on ‘fresh’ assets”
“All requests for assets will follow standard pattern of requesting them
from the server. Once the server responds with the asset, it will then be
cached by the Service Worker. If the request the for assets fails for
whatever reason, the Service Worker will check the cache. This is great
for assets that always need to be fresh. You may have noticed this
strategy will fail if an asset is requested and fails on the first try”
“network requests only with no cache”
“The Cache-Only strategy is a tad confusing. It only allows requests to be
served from the cache. The only way this works is if you have another
process pre-caching these resources before they are requested by your
application”
Progressive Web App
Traditionally, you’d have to build
• Desktop/mobile web + native Android + native iOS
You can, right now, in most cases, just build
• PWA + native iOS
And once iOS Safari implements push notifications, it will be just
• PWA
Progressive Web App
30
PWA
Service
Worker
HTTPS
Responsive
31
Site is served over HTTPS
To Test Use Lighthouse to verify Served
over HTTPS
To Fix Implement HTTPS and check
out letsencrypt.org to get started.
Pages are responsive on tablets & mobile devices
To Test •Use Lighthouse to verify Yes to all
of Design is mobile-friendly ,
although manually checking can
also be helpful.
•Check the Mobile Friendly Test
To Fix Look at implementing
a responsive design, or adaptively
serving a viewport-friendly site.
Progressive Web App
• Progressive - Work for every user, regardless of browser choice, because they
are built with progressive enhancement as a core tenet.
• Responsive - Fit any form factor, desktop, mobile, tablet, or whatever is next.
• Connectivity independent - Enhanced with service workers to work offline or
on low quality networks.
• App-like - Use the app-shell model to provide app-style navigation and
interactions.
• Fresh - Always up-to-date thanks to the service worker update process.
• Safe - Served via HTTPS to prevent snooping and ensure content has not 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 share via URL and not require complex installation.
Progressive Web App
• Lighthouse returns a Performance score between 0 and 100. 0 is the lowest
possible score and 100 is the best.
• The PWA audits are based on the Baseline PWA Checklist, which lists 14
requirements.
• Lighthouse has automated audits for 11 of the 14 requirements. The
remaining 3 can only be tested manually.
• The color-coding maps to these Performance score ranges:
• 0 to 49 (slow): Red
• 50 to 89 (average): Orange
• 90 to 100 (fast): Green
Before Implementing PWA After Implementing PWA
• We will deploy the developer angular app with PWA implemented (Exercise 2 ).
• Create Firebase Account to Deploy Angular Application
• Install the Firebase Tools using Firebase CLI
• Login and Initialize Firebase project using Firebase CLI
• Initialize your Firebase project run below command.
• Create Production Build using the AOT / JIT Compilation
• Deploying the web app in Firebase server
• Testing the hosted app in participants mobile (with / without data)
• Step by step guidance :
https://medium.com/@saleemmalikraja/deploying-an-angular-app-to-firebase-hosting-
18f99c9d5722
38
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
Progressive Web App
• Cross Browser Support : While Chrome, Opera, and Samsung’s android browser
supports PWA, IE, Edge and Safari are yet to extend their support.
• Limited Functionality: PWA doesn’t have support for any hardware that is not
supported by HTML5 (https://whatwebcando.today/)
• Cross Application Login Support : Native apps have the capability to talk to other
apps and authenticate logins (Facebook, Twitter, Google). As a webpage, PWA
doesn’t have the capability to communicate with other apps installed.
49
• https://medium.com/@saleemmalikraja/angular-pwa-2ddc3cccd090
• https://medium.com/dev-channel/why-progressive-web-apps-vs-native-is-the-wrong-question-to-ask-fb8555addcbb
• https://developers.google.com/web/progressive-web-apps/
• https://developers.google.com/web/showcase/2017/make-my-trip
• https://jakearchibald.github.io/isserviceworkerready/#moar
• https://jakearchibald.com/2014/offline-cookbook/
50
51
Questions ?
Progressive Web App
Ad

More Related Content

What's hot (20)

Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web App
Binh Bui
 
Progressive Web-App (PWA)
Progressive Web-App (PWA)Progressive Web-App (PWA)
Progressive Web-App (PWA)
NexThoughts Technologies
 
Introduction to Progressive Web Apps (PWA)
Introduction to Progressive Web Apps (PWA)Introduction to Progressive Web Apps (PWA)
Introduction to Progressive Web Apps (PWA)
Sandip Nirmal
 
PWA - Progressive Web App
PWA - Progressive Web AppPWA - Progressive Web App
PWA - Progressive Web App
Robert Robinson
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
Software Infrastructure
 
Pwa demystified
Pwa demystifiedPwa demystified
Pwa demystified
edynamic
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
Ido Green
 
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
Lets Grow Business
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
Akshay Sharma
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
Subodh Garg
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
Sankalp Khandelwal
 
Progressive Web Applications
Progressive Web ApplicationsProgressive Web Applications
Progressive Web Applications
Bartek Igielski
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
R. Caner Yıldırım
 
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
Abdelrahman Omran
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web development
Mohammed Safwat
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
Nitheesh T Ganesh
 
Progressive Web APP ( PWA )
Progressive Web APP ( PWA ) Progressive Web APP ( PWA )
Progressive Web APP ( PWA )
Bijaya Oli
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and React
Mike Melusky
 
Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...
Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...
Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...
Aleyda Solís
 
ppt of web development for diploma student
ppt of web development for diploma student ppt of web development for diploma student
ppt of web development for diploma student
Abhishekchauhan863165
 
Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web App
Binh Bui
 
Introduction to Progressive Web Apps (PWA)
Introduction to Progressive Web Apps (PWA)Introduction to Progressive Web Apps (PWA)
Introduction to Progressive Web Apps (PWA)
Sandip Nirmal
 
PWA - Progressive Web App
PWA - Progressive Web AppPWA - Progressive Web App
PWA - Progressive Web App
Robert Robinson
 
Pwa demystified
Pwa demystifiedPwa demystified
Pwa demystified
edynamic
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
Ido Green
 
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
Lets Grow Business
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
Akshay Sharma
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
Subodh Garg
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
Sankalp Khandelwal
 
Progressive Web Applications
Progressive Web ApplicationsProgressive Web Applications
Progressive Web Applications
Bartek Igielski
 
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
Abdelrahman Omran
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web development
Mohammed Safwat
 
Progressive Web APP ( PWA )
Progressive Web APP ( PWA ) Progressive Web APP ( PWA )
Progressive Web APP ( PWA )
Bijaya Oli
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and React
Mike Melusky
 
Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...
Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...
Progressive Web Apps (PWAs): Why you want one & how to optimize them #Applaus...
Aleyda Solís
 
ppt of web development for diploma student
ppt of web development for diploma student ppt of web development for diploma student
ppt of web development for diploma student
Abhishekchauhan863165
 

Similar to Progressive Web App (20)

Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
Saikiran Sheshagiri
 
Progressive web app testing
Progressive web app testingProgressive web app testing
Progressive web app testing
Kalhan Liyanage
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware
Sander Mangel
 
Basic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web AppsBasic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web Apps
AnjaliTanpure1
 
Progressive Web Apps - NPD Meet
Progressive Web Apps - NPD MeetProgressive Web Apps - NPD Meet
Progressive Web Apps - NPD Meet
Vaideeswaran Sethuraman
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friends
Antonio Peric-Mazar
 
Progressive Web App Development: The Future of Mobile App Development
Progressive Web App Development: The Future of Mobile App DevelopmentProgressive Web App Development: The Future of Mobile App Development
Progressive Web App Development: The Future of Mobile App Development
Stigasoft Pvt. Ltd.
 
The PRPL Pattern
The PRPL PatternThe PRPL Pattern
The PRPL Pattern
Red Pill Now
 
A year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUA year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMU
Antonio Peric-Mazar
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
Deepankar Chopra
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
WebGuru Infosystems Pvt. Ltd.
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developers
Filip Rakowski
 
SEMINAR PRESENTATION.pptx
SEMINAR PRESENTATION.pptxSEMINAR PRESENTATION.pptx
SEMINAR PRESENTATION.pptx
melbinantony456
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinale
Antonio Peric-Mazar
 
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
Sai Kiran Kasireddy
 
PWAs overview
PWAs overview PWAs overview
PWAs overview
TejinderMakkar
 
Cloud Computing Complete lecture Notes CCII.pptx
Cloud Computing Complete lecture Notes  CCII.pptxCloud Computing Complete lecture Notes  CCII.pptx
Cloud Computing Complete lecture Notes CCII.pptx
FaizanAnsari379088
 
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
Bhavesh Surani
 
WTF R PWAs?
WTF R PWAs?WTF R PWAs?
WTF R PWAs?
Mike Wilcox
 
Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
Antonio Peric-Mazar
 
Progressive web app testing
Progressive web app testingProgressive web app testing
Progressive web app testing
Kalhan Liyanage
 
Exploring pwa for shopware
Exploring pwa for shopwareExploring pwa for shopware
Exploring pwa for shopware
Sander Mangel
 
Basic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web AppsBasic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web Apps
AnjaliTanpure1
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friends
Antonio Peric-Mazar
 
Progressive Web App Development: The Future of Mobile App Development
Progressive Web App Development: The Future of Mobile App DevelopmentProgressive Web App Development: The Future of Mobile App Development
Progressive Web App Development: The Future of Mobile App Development
Stigasoft Pvt. Ltd.
 
A year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUA year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMU
Antonio Peric-Mazar
 
PWA basics for developers
PWA basics for developersPWA basics for developers
PWA basics for developers
Filip Rakowski
 
SEMINAR PRESENTATION.pptx
SEMINAR PRESENTATION.pptxSEMINAR PRESENTATION.pptx
SEMINAR PRESENTATION.pptx
melbinantony456
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinale
Antonio Peric-Mazar
 
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
Sai Kiran Kasireddy
 
Cloud Computing Complete lecture Notes CCII.pptx
Cloud Computing Complete lecture Notes  CCII.pptxCloud Computing Complete lecture Notes  CCII.pptx
Cloud Computing Complete lecture Notes CCII.pptx
FaizanAnsari379088
 
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
Bhavesh Surani
 
Ad

Recently uploaded (20)

Metal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistryMetal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistry
mee23nu
 
Mathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdfMathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdf
TalhaShahid49
 
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptxExplainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
MahaveerVPandit
 
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E..."Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
Infopitaara
 
Degree_of_Automation.pdf for Instrumentation and industrial specialist
Degree_of_Automation.pdf for  Instrumentation  and industrial specialistDegree_of_Automation.pdf for  Instrumentation  and industrial specialist
Degree_of_Automation.pdf for Instrumentation and industrial specialist
shreyabhosale19
 
Fort night presentation new0903 pdf.pdf.
Fort night presentation new0903 pdf.pdf.Fort night presentation new0903 pdf.pdf.
Fort night presentation new0903 pdf.pdf.
anuragmk56
 
Oil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdfOil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdf
M7md3li2
 
Artificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptxArtificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptx
aditichinar
 
π0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalizationπ0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalization
NABLAS株式会社
 
Data Structures_Introduction to algorithms.pptx
Data Structures_Introduction to algorithms.pptxData Structures_Introduction to algorithms.pptx
Data Structures_Introduction to algorithms.pptx
RushaliDeshmukh2
 
Introduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptxIntroduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptx
AS1920
 
The Gaussian Process Modeling Module in UQLab
The Gaussian Process Modeling Module in UQLabThe Gaussian Process Modeling Module in UQLab
The Gaussian Process Modeling Module in UQLab
Journal of Soft Computing in Civil Engineering
 
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdfMAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
ssuser562df4
 
Structural Response of Reinforced Self-Compacting Concrete Deep Beam Using Fi...
Structural Response of Reinforced Self-Compacting Concrete Deep Beam Using Fi...Structural Response of Reinforced Self-Compacting Concrete Deep Beam Using Fi...
Structural Response of Reinforced Self-Compacting Concrete Deep Beam Using Fi...
Journal of Soft Computing in Civil Engineering
 
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design ThinkingDT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DhruvChotaliya2
 
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITYADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ijscai
 
Smart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineeringSmart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineering
rushikeshnavghare94
 
"Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G...
"Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G..."Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G...
"Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G...
Infopitaara
 
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptxLidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
RishavKumar530754
 
Raish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdfRaish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdf
RaishKhanji
 
Metal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistryMetal alkyne complexes.pptx in chemistry
Metal alkyne complexes.pptx in chemistry
mee23nu
 
Mathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdfMathematical foundation machine learning.pdf
Mathematical foundation machine learning.pdf
TalhaShahid49
 
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptxExplainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
MahaveerVPandit
 
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E..."Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
Infopitaara
 
Degree_of_Automation.pdf for Instrumentation and industrial specialist
Degree_of_Automation.pdf for  Instrumentation  and industrial specialistDegree_of_Automation.pdf for  Instrumentation  and industrial specialist
Degree_of_Automation.pdf for Instrumentation and industrial specialist
shreyabhosale19
 
Fort night presentation new0903 pdf.pdf.
Fort night presentation new0903 pdf.pdf.Fort night presentation new0903 pdf.pdf.
Fort night presentation new0903 pdf.pdf.
anuragmk56
 
Oil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdfOil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdf
M7md3li2
 
Artificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptxArtificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptx
aditichinar
 
π0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalizationπ0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalization
NABLAS株式会社
 
Data Structures_Introduction to algorithms.pptx
Data Structures_Introduction to algorithms.pptxData Structures_Introduction to algorithms.pptx
Data Structures_Introduction to algorithms.pptx
RushaliDeshmukh2
 
Introduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptxIntroduction to Zoomlion Earthmoving.pptx
Introduction to Zoomlion Earthmoving.pptx
AS1920
 
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdfMAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
ssuser562df4
 
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design ThinkingDT REPORT by Tech titan GROUP to introduce the subject design Thinking
DT REPORT by Tech titan GROUP to introduce the subject design Thinking
DhruvChotaliya2
 
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITYADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ADVXAI IN MALWARE ANALYSIS FRAMEWORK: BALANCING EXPLAINABILITY WITH SECURITY
ijscai
 
Smart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineeringSmart Storage Solutions.pptx for production engineering
Smart Storage Solutions.pptx for production engineering
rushikeshnavghare94
 
"Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G...
"Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G..."Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G...
"Feed Water Heaters in Thermal Power Plants: Types, Working, and Efficiency G...
Infopitaara
 
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptxLidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
RishavKumar530754
 
Raish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdfRaish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdf
RaishKhanji
 
Ad

Progressive Web App

  • 6. “Progressive Web Apps (PWAs) are web applications that load like regular web pages or websites but can offer the user functionality such as working offline, push notifications, and device hardware access traditionally available only to native mobile applications. PWAs are an emerging technology that combine the open standards of the web offered by modern browsers to provide benefits of a rich mobile experience” • Progressive: It works for every user(independent of browser choice ) there by reduced load time to the least possible minimum( i.e. <3sec) • Web App: In terms of look and feel on the choice of device. Will give the experience like an native mobile app since we can add as an icon to home screen. Affordable mobile web app @ no cost( in development / deployment / maintenance ) • A Progressive Web App works in the browser so there is no need for specialized development.PWA’s fit all kinds of tablets, laptops or smartphones due to the use of responsive web design techniques.. • Works in low connectivity even when offline. • PWA saved 88% of time to load the first content and meaningful paint and thus reduced load time less than 3 seconds. • PWAs allow websites to be added to home screens on mobile devices and receive push notifications. • Security is ensured in PWA since HTTPS hoisting. • No need to download/update from app store( some apps are paid ).
  • 9. HTTPS App Manifest Service Workers
  • 11. • An app manifest file should describe the resources your app will need. This includes your app’s displayed name, icons, as well as splash screen. If you link to the manifest file in your index.html, browsers will detect that and load the resources for you. • The minimal HTML, CSS, and JavaScript and any other static resources that provide the structure for your page, minus the actual content specific to the page.
  • 12. { "name": "service-worker", "short_name": "sw-demo", "theme_color": "#1976d2", "background_color": "#fafafa", "display": "standalone", "scope": "/", "start_url": "/", "icons": [ { "src": "assets/icons/icon-72x72.png", "sizes": "72x72", "type": "image/png" }, … ] } 12 • short_name is used on the user's home screen, launcher, or other places where space may be limited • name is used in the app install • theme_color is used on the user's home screen, launcher, or other places where space may be limited•The background_color property is used on the splash screen when the application is first launched.• display property Opens the web app to look and feel like a standalone native app. The app runs in its own window, separate from the browser, and hides standard browser UI elements like the URL bar, etc. • Browser will automatically scale the icon for the device.
  • 13. 13
  • 14. • The worker thread can perform tasks without interfering with the user interface. • In addition, they can perform I/O using XMLHttpRequest (although the responseXML and channel attributes are always null). Once created, a worker can send messages to the JavaScript code that created it by posting messages to an event handler specified by that code (and vice versa.) “Web Workers is a simple means for web content to run scripts in background threads”
  • 15. • We will be demoing them how an application behaves with and without web worker. • Demo URL : https://web-worker- ff594.firebaseapp.com/ 15
  • 16. • Service worker could be mentioned in Offline Support, but it really deserves its own section. Service worker provides a programmatic way to cache app resources. Be it JavaScript files or JSON data from a HTTP request. The programmatic API allows developers to decide how to handle caching and provides a much more flexible experience than other options • Service workers essentially act as proxy servers that sit between web applications, the browser, and the network (when available). They are intended, among other things, to enable the creation of effective offline experiences, intercept network requests and take appropriate action based on whether the network is available, and update assets residing on the server. They will also allow access to push notifications and background sync APIs. “A Service Worker is just a javascript file that runs in the background. A service worker is a type of web worker ”
  • 17. • We will develop a basic angular app with PWA implemented. • Demo URL: https://sw-demo- 236f8.firebaseapp.com/ 17
  • 18. 18
  • 20. BROW SER LIMIT Chrom e <6% of free space Firefox <10% of free space Safari <50MB IE10 <250MB Edge Dependent on volume size
  • 23. “Cache-First strategy is to check the cache before going to the network. This is great for caching on the fly and optimizing for repetitive asset requests since it only hits the network on ‘fresh’ assets”
  • 24. “All requests for assets will follow standard pattern of requesting them from the server. Once the server responds with the asset, it will then be cached by the Service Worker. If the request the for assets fails for whatever reason, the Service Worker will check the cache. This is great for assets that always need to be fresh. You may have noticed this strategy will fail if an asset is requested and fails on the first try”
  • 25. “network requests only with no cache”
  • 26. “The Cache-Only strategy is a tad confusing. It only allows requests to be served from the cache. The only way this works is if you have another process pre-caching these resources before they are requested by your application”
  • 28. Traditionally, you’d have to build • Desktop/mobile web + native Android + native iOS You can, right now, in most cases, just build • PWA + native iOS And once iOS Safari implements push notifications, it will be just • PWA
  • 30. 30
  • 31. PWA Service Worker HTTPS Responsive 31 Site is served over HTTPS To Test Use Lighthouse to verify Served over HTTPS To Fix Implement HTTPS and check out letsencrypt.org to get started. Pages are responsive on tablets & mobile devices To Test •Use Lighthouse to verify Yes to all of Design is mobile-friendly , although manually checking can also be helpful. •Check the Mobile Friendly Test To Fix Look at implementing a responsive design, or adaptively serving a viewport-friendly site.
  • 33. • Progressive - Work for every user, regardless of browser choice, because they are built with progressive enhancement as a core tenet. • Responsive - Fit any form factor, desktop, mobile, tablet, or whatever is next. • Connectivity independent - Enhanced with service workers to work offline or on low quality networks. • App-like - Use the app-shell model to provide app-style navigation and interactions. • Fresh - Always up-to-date thanks to the service worker update process.
  • 34. • Safe - Served via HTTPS to prevent snooping and ensure content has not 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 share via URL and not require complex installation.
  • 36. • Lighthouse returns a Performance score between 0 and 100. 0 is the lowest possible score and 100 is the best. • The PWA audits are based on the Baseline PWA Checklist, which lists 14 requirements. • Lighthouse has automated audits for 11 of the 14 requirements. The remaining 3 can only be tested manually. • The color-coding maps to these Performance score ranges: • 0 to 49 (slow): Red • 50 to 89 (average): Orange • 90 to 100 (fast): Green
  • 37. Before Implementing PWA After Implementing PWA
  • 38. • We will deploy the developer angular app with PWA implemented (Exercise 2 ). • Create Firebase Account to Deploy Angular Application • Install the Firebase Tools using Firebase CLI • Login and Initialize Firebase project using Firebase CLI • Initialize your Firebase project run below command. • Create Production Build using the AOT / JIT Compilation • Deploying the web app in Firebase server • Testing the hosted app in participants mobile (with / without data) • Step by step guidance : https://medium.com/@saleemmalikraja/deploying-an-angular-app-to-firebase-hosting- 18f99c9d5722 38
  • 49. • Cross Browser Support : While Chrome, Opera, and Samsung’s android browser supports PWA, IE, Edge and Safari are yet to extend their support. • Limited Functionality: PWA doesn’t have support for any hardware that is not supported by HTML5 (https://whatwebcando.today/) • Cross Application Login Support : Native apps have the capability to talk to other apps and authenticate logins (Facebook, Twitter, Google). As a webpage, PWA doesn’t have the capability to communicate with other apps installed. 49
  • 50. • https://medium.com/@saleemmalikraja/angular-pwa-2ddc3cccd090 • https://medium.com/dev-channel/why-progressive-web-apps-vs-native-is-the-wrong-question-to-ask-fb8555addcbb • https://developers.google.com/web/progressive-web-apps/ • https://developers.google.com/web/showcase/2017/make-my-trip • https://jakearchibald.github.io/isserviceworkerready/#moar • https://jakearchibald.com/2014/offline-cookbook/ 50

Editor's Notes

  • #11: Src: https://www.slideshare.net/mywipl/why-use-https-instead-of-http
  • #22: Src : https://it.goodbarber.com/blog/progressive-web-app-tutto-quello-che-bisogna-sapere-a575/
  • #33: https://www.pwastats.com/
  • #34: Src: https://ionicframework.com/docs/developer-resources/progressive-web-apps/
  • #36: https://www.pwastats.com/
  • #37: Src: https://ionicframework.com/docs/developer-resources/progressive-web-apps/
  • #40: https://www.pwastats.com/
  • #41: https://developers.google.com/web/showcase/2017/ola
  • #42: https://developers.google.com/web/showcase/2017/ola
  • #45: Src: https://medium.com/dev-channel/a-pinterest-progressive-web-app-performance-case-study-3bd6ed2e6154
  • #47: Src:https://14islands.com/blog/2017/10/25/pwa-what-why-and-how/
  • #48: https://www.pwastats.com/
  • #49: Src : https://it.goodbarber.com/blog/progressive-web-app-tutto-quello-che-bisogna-sapere-a575/
  • #53: Src:https://14islands.com/blog/2017/10/25/pwa-what-why-and-how/