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
300
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
140
Be instant and engaging on the mobile web - Google Mobile for India
paulkinlan
4
320
The future of the web on mobile? - Coldfront conf
paulkinlan
5
56k
This is the Web Platform
paulkinlan
5
65k
State of the Mobile Browser
paulkinlan
3
210
The Next Evolution of Chrome Apps - Devoxx 2012
paulkinlan
3
400
Building Web Apps of the future. Tomorrow, today and yesterday.
paulkinlan
32
7.3k
Other Decks in Programming
See All in Programming
Googleの新しいコーディングAIエージェントJulesを使ってみた
tonionagauzzi
0
100
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
270
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
180
Workers を定期実行する方法は一つじゃない
rokuosan
0
130
AI Ramen Fight
yusukebe
0
110
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
180
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
13k
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
1.2k
React は次の10年を生き残れるか:3つのトレンドから考える
oukayuka
39
14k
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
26
8k
Caude codeで爆速開発
codelynx
0
100
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.4k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
346
40k
Raft: Consensus for Rubyists
vanstee
140
7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.3k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
How STYLIGHT went responsive
nonsquared
100
5.6k
A designer walks into a library…
pauljervisheath
207
24k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Thoughts on Productivity
jonyablonski
69
4.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
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