Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Progressive Web Apps on Rails
Search
Ross Kaffenberger
September 22, 2016
Technology
0
2.3k
Progressive Web Apps on Rails
Talking about "Why Progressive Web Apps?" and how you can start building them on Rails
Ross Kaffenberger
September 22, 2016
Tweet
Share
More Decks by Ross Kaffenberger
See All by Ross Kaffenberger
Getting Lazy with Vue and PDFs
rossta
2
1.4k
A Webpack Survival Guide for Rails Developers
rossta
1
2.6k
What I look for in a Junior Developer
rossta
2
1.1k
Enumerable's Ugly Cousin - GORUCO Microtalk
rossta
0
400
Enumerator - Enumerable's Ugly Cousin
rossta
1
540
Recurring Events with Montrose
rossta
3
2k
Enumerable - How I Fell in Love with Ruby
rossta
20
4.7k
Create and Deploy an Ember App in 5 Minutes
rossta
7
3.7k
Other Decks in Technology
See All in Technology
Capture Checking / Separation Checking 入門
tanishiking
0
110
.NET 10 のパフォーマンス改善
nenonaninu
2
4.7k
私も懇親会は苦手でした ~苦手だからこそ懇親会を楽しむ方法~ / 20251127 Masaki Okuda
shift_evolve
PRO
4
540
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.3k
Security Diaries of an Open Source IAM
ahus1
0
100
なぜフロントエンド技術を追うのか?なぜカンファレンスに参加するのか?
sakito
8
1.9k
小さな判断で育つ、大きな意思決定力 / 20251204 Takahiro Kinjo
shift_evolve
PRO
1
270
MCP・A2A概要 〜Google Cloudで構築するなら〜
shukob
0
160
Eight Engineering Unit 紹介資料
sansan33
PRO
0
5.7k
32のキーワードで学ぶ はじめての耐量子暗号(PQC) / Getting Started with Post-Quantum Cryptography in 32 keywords
quiver
0
180
AIにおける自由の追求
shujisado
2
470
pmconf2025 - データを活用し「価値」へ繋げる
glorypulse
0
420
Featured
See All Featured
How GitHub (no longer) Works
holman
316
140k
Producing Creativity
orderedlist
PRO
348
40k
Site-Speed That Sticks
csswizardry
13
990
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Thoughts on Productivity
jonyablonski
73
5k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.1k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
73
Mobile First: as difficult as doing things right
swwweet
225
10k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Transcript
Progressive Web Apps on Rails Ross Kaffenberger @rossta
Native > Web Reliable Independent of connectivity Works offline Sync-able
Installable Re-engageable
Web > Native Responsive Write once, Run everywhere* Fresh Linkable
Discoverable Fast first-visit
Best of both worlds (on the web) Progressive Web Apps
None
None
Service Worker •Event driven •Worker context •No DOM access
Service Worker •Intercept requests •Access to cache, IndexedDB, etc. •Send
push notifications •Sync with server in background
Service Worker
Service Worker
Service Worker •HTTPS only •Scoped by URL, e.g. /serviceworker.js /admin/serviceworker.js
Service Worker on Rails Problem: Making Service Worker scripts work
with the asset pipeline GET /serviceworker.js
Service Worker on Rails gem “serviceworker-rails” •Serves pipeline assets from
canonical urls •Customizes response headers
Service Worker on Rails
Service Worker on Rails Sandbox
github.com/hemanth/ awesome-pwa github.com/TalAter/ awesome-service-workers
github.com/rossta/ serviceworker-rails
@rossta rossta.net Ross Kaffenberger