Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Progressive Web Apps in 10 minutes - Google for...
Search
Paul Kinlan
December 17, 2015
Programming
2
270
Progressive Web Apps in 10 minutes - Google for India
Paul Kinlan
December 17, 2015
Tweet
Share
More Decks by Paul Kinlan
See All by Paul Kinlan
[this.javascript] State of Chrome
paulkinlan
0
130
Be instant and engaging on the mobile web - Google Mobile for India
paulkinlan
4
280
The future of the web on mobile? - Coldfront conf
paulkinlan
5
56k
This is the Web Platform
paulkinlan
5
64k
State of the Mobile Browser
paulkinlan
3
200
The Next Evolution of Chrome Apps - Devoxx 2012
paulkinlan
3
390
Building Web Apps of the future. Tomorrow, today and yesterday.
paulkinlan
32
7.2k
Other Decks in Programming
See All in Programming
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
230
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
880
最新TCAキャッチアップ
0si43
0
140
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
200
OnlineTestConf: Test Automation Friend or Foe
maaretp
0
110
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
2
660
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
mot_techtalk
4
1.4k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
120
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
4
640
Macとオーディオ再生 2024/11/02
yusukeito
0
370
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
334
57k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
The Language of Interfaces
destraynor
154
24k
The Cult of Friendly URLs
andyhume
78
6k
Building Adaptive Systems
keathley
38
2.3k
Teambox: Starting and Learning
jrom
133
8.8k
Visualization
eitanlees
145
15k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Raft: Consensus for Rubyists
vanstee
136
6.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Ruby is Unlike a Banana
tanoku
97
11k
Transcript
Paul Kinlan Developer Advocate
A Progressive Web App is Discoverable by all Loads quickly,
even on 2G Works offline Fast and smooth Progressively installed Easy to re-engage with
Installable Performant Engaging
Add to home screen Installable
Splash screen and theme color Installable
<link rel=“manifest" href="manifest.json"> HTML { "short_name": "Flipkart Lite", "start_url": "/",
"display": "standalone", "background_color": "#2196F3", "theme_color": "#2196F3", "icons": [{ "src": "icons/icon-192.png", "sizes": "192x192", "type": "image/png" }], "orientation": "portrait" } JSON Manifest Installable
Activated Error Idle Active Terminated Load Service Worker Adds app-like
lifecycle to a page Wakes up only when the OS says Only responds to system events Installable
Install required assets Activated You manage what is “installed” and
how it is cached. Install Get files /index.html /styles/main.css /scripts/app.js Installable
Offline and resilient You are in control Client-side proxy Manage
every request Service Worker Web Server Local Cache Installable
Fast even on 2G and cost effective Service Worker Local
Cache Web Server Performant
DPR: Screen Density Viewport-Width: Mobile width Save-data:
User wants to save data downlinkMax: Network speed Make intelligent decisions on sever No image No videos Low res image downlinkMax < 50kp Save-data = 1 DPR = 0.5 Web Server Performant
Automatically fast ModPagespeedInheritVHostConfig on ModPagespeedRewriteLevel OptimizeForBandwidth <VirtualHost *:80> ServerName prioritize_above_the_fold.example.com
ModPagespeedEnableFilters inline_javascript,prioritize_critical_css,inline_preview_images </VirtualHost> <VirtualHost *:80> ServerName preserve_css_urls_off.example.com ModPagespeedCssPreserveURLs off </Directory> <VirtualHost *:80> ServerName core.example.com ModPagespeedRewriteLevel CoreFilters </Directory> Performant
Push notifications Works when browser closed Lightweight (save’s battery by
using GCM) Native notifications Service Worker Push Service (GCM) Web Server Engaging
Power of push notifications increase in time spent for users
visiting via push notifications 72% increase in average spend per visit by users arriving via a push notification 26% Engaging
350M Push notifications delivered every day Engaging
Bluetooth Permissions Network Information Microphone Camera And there is
more Native Sharing Location Engaging
Progressive Web Apps Discoverable by all Loads quickly, even on
2G Works offline Fast and smooth Progressively installed Easy to re-engage with
The web is critical to your mobile strategy
Thank You
New Billion Users IDG Ventures Culturealley Google Nishant Patni Sudhir
Sethi Jay Kota Snapdeal Anand Chandrasekaran
Thank You