SlideShare a Scribd company logo
1 of 57
STEVE
JOBS
“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”
2007
STEVE
JOBS
“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”
2007
STEVE
JOBS
“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”
2007
ALEX
RUSSELL
Progressive Web Apps:
Escaping Tabs Without Losing
Our Soul
2015
WHAT ARE
PROGRESSIVE WEB
APPS?
WHAT IT’S NOT
A Tool
A Framework
WHAT THEY ARE
Progressive
Works on any device and enhance
functionality progressively.
Discoverable
Better discovery and integration
with search.
Linkable
Ability to retain or reload its state
and be shareable from a link.
Responsive
Fit any device’s form factor and
screen size.
Current
Application and content is up to date
when connected to the Internet.
Re-engageable
Promotes re-engagement through
features such as push notifications.
Performant
Works as fast or faster than a native app.
Connected to users
Direct feedback to you through
ratings and reviews
App-like
Looks like a native app and uses the
application shell model with minimal
page refreshes.
Connectivity-agnostic
Works with low connectivity or offline.
Installable
Install on the device’s desktop,
start menu, or task bar making it
readily available.
MINIMUM
HTTPS Web App Manifest Service Worker
RECOMMENDED
Cross Platform Responsive Deep linking Best Practices
SUPPORT
WHY?
CONNECTIVITY
Service worker takes care of bad connection
• By caching
• Showing custom offline page
PLATFORM INDEPENDENT
100% code share
Not in the store (per se)
WHY?
 No lengthy installation process
 Don’t occupy device storage
 Discoverable
 Secure
 Fast
 Cheap
WHAT ABOUT…?
I NEED A NATIVE APP FOR
Geolocation
I NEED A NATIVE APP FOR
GeolocationW3C API
I NEED A NATIVE APP FOR
Authentication
I NEED A NATIVE APP FOR
AuthenticationWeb API
I NEED A NATIVE APP FOR
Payment
I NEED A NATIVE APP FOR
Payment Request API
I NEED A NATIVE APP FOR
USB
Bluetooth
VR
Gamepad
I NEED A NATIVE APP FOR
Web USB API
Web Bluetooth API
WebVR
Web Gamepad API
IF IT’S REALLY NOT
THERE (YET)
WHO?
EXAMPLES
Starbucks
EXAMPLES
Twitter
EXAMPLES
Pinterest
EXAMPLES
Instagram
MAKING PWA
ANALYZING
LIGHTHOUSE
LIGHTHOUSE
 Chrome Extension
 Dev Tools Audit
 CLI
Lighthouse analyzes web apps and web
pages, collecting modern performance
metrics and insights on developer best
practices.
WEBHINT
webhint is a linting tool that will help you with your site's accessibility, speed,
security and more, by checking your code for best practices and common
error
 Online scanner
 CLI
 Visual Studio Code integration
GETTING STARTED
PWA BUILDER
1. Provide a URL
2. Generate a Manifest
3. Build a Service Worker
4. Publish the App
Generate your Progressive Web App
WEB APP MANIFEST
 W3C standard
 Contains all info about app
 Working Draft - 18 October 2018
<link rel="manifest" href="/manifest.webmanifest">
SERVICE WORKER
 Runs in background
 Handles cache, push, sync
 programmable network proxy
SERVICE
WORKER
Lifecycle
FETCH
 Modern replacement of XMLHttpRequest
 Relies on promises
WHAT’S NEXT?
NOT SHOWN
NOT SHOWN
 Push notifications
 Notifications API + Push API
 Build on top of the Service Worker API
 Background Sync
 Defer actions until stable connection
FRAMEWORKS
Performance Resilience Progressive web app
JavaScript Libraries for adding offline support to web apps
• Precaching
• Runtimecaching Strategies
• Request routing
• Backgroundsync
• Helpful debugging
PREACT-CLI
 App creation
 Index.html app shell generation
 Browser list autoprefixing
 Firebase configuration for server
push
 Powered by sw-precache
VUE
Vue-cli & @vue/cli-plugin-pwa
 Uses WorkBox
 Can automatically generate service worker or
start with existing one
ANGULAR
@angular-cli
 ng add @angular/pwa - Turn your application into
a PWA by adding an app manifest and service
worker
TIPS
TESTING
 F12 tools
 Connect phone with USB
 Chrome://inspect
 Android debugger needs to be running
“adb.exe start-server”
 Custom domain with SSL
 DNS directs to local IP, ie
192.168.1.13
TESTING
• Test on real devices
• Throttling is not enough
• Offline checkbox doesn’t affect websockets
PWA SLACK
https://join.slack.com/t/progressive-web-apps/shared_invite/enQtMjY0NDI2MjAxNTc1LWM4ZWYyNDZhNDRlZDUyNTk5YThhZGQwOWRhZTkwZjAwNTlhNzA3MzY0ZWM0NWQxZmVkZjJhNWEzNTZkYmQ3ZTY
• Events
• Tooling
• Help
• Examples
SERVICEWORKE.RS
ANGULAR CONNECTNovember 6-7
CHROME DEV SUMMITNovember 12-13
THANK YOU!
Timmy Kokke
https://timmykokke.com
https://youtube.com/c/sorskoot
https://webxr.nl
@sorskoot
Timmy.kokke@centric.eu

More Related Content

What's hot

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
 

What's hot (20)

Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Building REST APIs that don't suck for modern day SPAs
Building REST APIs that don't suck for modern day SPAsBuilding REST APIs that don't suck for modern day SPAs
Building REST APIs that don't suck for modern day SPAs
 
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 are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
Progressive web apps
Progressive web appsProgressive 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
 
Progressive Web Apps - Up & Running
Progressive Web Apps - Up & RunningProgressive Web Apps - Up & Running
Progressive Web Apps - Up & Running
 
Progressive Web Apps: The Breakdown
Progressive Web Apps: The BreakdownProgressive Web Apps: The Breakdown
Progressive Web Apps: The Breakdown
 
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
 
Demystifying Progressive Web Apps
Demystifying Progressive Web AppsDemystifying Progressive Web Apps
Demystifying 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 apps
Progressive web appsProgressive web apps
Progressive web apps
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Progressive Web Apps(PWA)
Progressive Web Apps(PWA)Progressive Web Apps(PWA)
Progressive Web Apps(PWA)
 
SMART DESIGN - icon fonts, svg, and the mobile influence
SMART DESIGN - icon fonts, svg, and the mobile influenceSMART DESIGN - icon fonts, svg, and the mobile influence
SMART DESIGN - icon fonts, svg, and the mobile influence
 
Introduction to Progressive Web App
Introduction to Progressive Web AppIntroduction to Progressive Web App
Introduction to Progressive Web App
 
Progressive Web App (feat. React, Django)
Progressive Web App (feat. React, Django)Progressive Web App (feat. React, Django)
Progressive Web App (feat. React, Django)
 
An introduction to Progressive Web Apps
An introduction to Progressive Web AppsAn introduction to Progressive Web Apps
An introduction to Progressive Web Apps
 

Similar to Progressive Web Apps

Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Chris Love
 

Similar to Progressive Web Apps (20)

Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
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
 
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
 
Top front end website development tools and frameworks
Top front end website development tools and frameworksTop front end website development tools and frameworks
Top front end website development tools and frameworks
 
Progressive web application
Progressive web applicationProgressive web application
Progressive web application
 
Website development tools
Website development toolsWebsite development tools
Website development tools
 
What Are Progressive Web Application Development
What Are Progressive Web Application DevelopmentWhat Are Progressive Web Application Development
What Are Progressive Web Application Development
 
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
 
Web Application Development- Best Practices in 2023.
Web Application Development- Best Practices in 2023.Web Application Development- Best Practices in 2023.
Web Application Development- Best Practices in 2023.
 
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdfAsp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
 
PWAs overview
PWAs overview PWAs overview
PWAs overview
 
Progressive Web Application by Citytech
Progressive Web Application by CitytechProgressive Web Application by Citytech
Progressive Web Application by Citytech
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Web Application Development in 2023.pdf
Web Application Development in 2023.pdfWeb Application Development in 2023.pdf
Web Application Development in 2023.pdf
 
Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web Frameworks
 
The Complete Guide To Custom Web Application Development.pdf
The Complete Guide To Custom Web Application Development.pdfThe Complete Guide To Custom Web Application Development.pdf
The Complete Guide To Custom Web Application Development.pdf
 
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
 
Prototype Development in Mobile-Learning Design Research
Prototype Development in Mobile-Learning Design ResearchPrototype Development in Mobile-Learning Design Research
Prototype Development in Mobile-Learning Design Research
 
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
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 

More from Timmy Kokke

TypeScript in Windows Store apps
TypeScript in Windows Store appsTypeScript in Windows Store apps
TypeScript in Windows Store apps
Timmy Kokke
 
Reusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store appsReusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store apps
Timmy Kokke
 
Unit Testing MVVM in Silverlight
Unit Testing MVVM in SilverlightUnit Testing MVVM in Silverlight
Unit Testing MVVM in Silverlight
Timmy Kokke
 
HTML5 - An Introduction
HTML5 - An IntroductionHTML5 - An Introduction
HTML5 - An Introduction
Timmy Kokke
 

More from Timmy Kokke (18)

Back to Space
Back to SpaceBack to Space
Back to Space
 
Why front-end matters in 2019
Why front-end matters in 2019Why front-end matters in 2019
Why front-end matters in 2019
 
Centric - PWA WebCast
Centric - PWA WebCastCentric - PWA WebCast
Centric - PWA WebCast
 
WebXR - Introduction and Workshop
WebXR - Introduction and WorkshopWebXR - Introduction and Workshop
WebXR - Introduction and Workshop
 
Virtual Reality on the Web
Virtual Reality on the WebVirtual Reality on the Web
Virtual Reality on the Web
 
WebVR with Babylon.JS
WebVR with Babylon.JSWebVR with Babylon.JS
WebVR with Babylon.JS
 
VR in a Box
VR in a BoxVR in a Box
VR in a Box
 
VR in a Box
VR in a BoxVR in a Box
VR in a Box
 
Progressive Web Apps - Lightning Talk
Progressive Web Apps - Lightning TalkProgressive Web Apps - Lightning Talk
Progressive Web Apps - Lightning Talk
 
JavaScript in Universal Windows Platform apps
JavaScript in Universal Windows Platform appsJavaScript in Universal Windows Platform apps
JavaScript in Universal Windows Platform apps
 
Store apps with AngularJS
Store apps with AngularJSStore apps with AngularJS
Store apps with AngularJS
 
Resharper - Next Steps
Resharper - Next StepsResharper - Next Steps
Resharper - Next Steps
 
TypeScript in Windows Store apps
TypeScript in Windows Store appsTypeScript in Windows Store apps
TypeScript in Windows Store apps
 
Reusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store appsReusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store apps
 
Beginning with blend
Beginning with blendBeginning with blend
Beginning with blend
 
What's Silverlight?
What's Silverlight?What's Silverlight?
What's Silverlight?
 
Unit Testing MVVM in Silverlight
Unit Testing MVVM in SilverlightUnit Testing MVVM in Silverlight
Unit Testing MVVM in Silverlight
 
HTML5 - An Introduction
HTML5 - An IntroductionHTML5 - An Introduction
HTML5 - An Introduction
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
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
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 

Progressive Web Apps

Editor's Notes

  1. https://infrequently.org/2015/06/progressive-apps-escaping-tabs-without-losing-our-soul/
  2. Since IOS 11.3 also on IOS!
  3. Uber & Google maps Go
  4. Windows Hello
  5. https://preview.startbucks.com
  6. https://mobile.twitter.com
  7. https://pinterest.com
  8. https://Instagram.com
  9. Build demosite with bootstrap studio and deploy with FTP. LightHouse PWA Builder Create Icon Add manifest Add Service worker with offline page
  10. Was SonarWhal Started my MS Edge team, wanted open source and community driven
  11. Build demosite with bootstrap studio and deploy with FTP.
  12. Static index.html
  13. Maxime Salnikov Building an Angular PWA: Angular Service Worker or Workbox?