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
Search
Oscar Martin Cortez Martinez
December 15, 2018
Programming
0
47
Progressive Web Apps
Introduction to Progressive Web Apps - GDG Managua meetup 15 Dic. 2018
Oscar Martin Cortez Martinez
December 15, 2018
Tweet
Share
More Decks by Oscar Martin Cortez Martinez
See All by Oscar Martin Cortez Martinez
Python Packaging Without Pain
oscarmcm
0
180
Tools And Frameworks
oscarmcm
0
65
Web App Weekend - Firefox Apps
oscarmcm
0
44
RUBOTO
oscarmcm
1
87
Other Decks in Programming
See All in Programming
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
360
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
130
ReadMoreTextView
fornewid
1
480
ニーリーにおけるプロダクトエンジニア
nealle
0
440
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
800
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
400
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
330
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
570
VS Code Update for GitHub Copilot
74th
1
370
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
260
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
GitHub's CSS Performance
jonrohan
1031
460k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
A Modern Web Designer's Workflow
chriscoyier
694
190k
Transcript
PROGRESSIVE WEB APPS Oscar Cortez Dec 2018
¿QUE ES UNA PWA?
UN MOMENTO
PWA
APWA
AWPW
AMWP
AMP
AMP != PWA
None
KILLEDBYGOOGLE.COM
None
RECAPITULANDO
¿QUE ES UNA PWA?
LAS PROGRESSIVE WEB APPS SON EXPERIENCIAS QUE COMBINAN LO MEJOR
DE LA WEB Y LO MEJOR DE LAS APPS. Pete LePage PWA
None
UN SITIO QUE USA LAS TECNOLOGÍAS MODERNAS EN LOS NAVEGADORES
Y LAS MEJORES PRACTICAS PARA PROVEER UNA EXPERIENCIA RÁPIDA Y NATIVA. Zack Argyle PWA
UN SITIO QUE USA LAS TECNOLOGÍAS MODERNAS EN LOS NAVEGADORES
Y LAS MEJORES PRACTICAS PARA PROVEER UNA EXPERIENCIA RÁPIDA Y NATIVA. Zack Argyle PWA
DE CONFIANZA RAPIDAS ATRACTIVAS PWA es…
TECNOLOGIAS USADAS
•HTTPS •W3C MANIFEST •SERVICE WORKER •CACHE
HTTPS
¯\_(ツ)_/¯
W3C MANIFEST
{ "name": "Donate App", "description": "This app helps you donate
to worthy causes.", "icons": [{ "src": "images/icon.png", "sizes": "192x192" }] }
<!DOCTYPE html> <html> <head> <title>Racer 3K</title> <!-- Startup configuration -->
<link rel="manifest" href="manifest.webmanifest"> <!-- Fallback application metadata for legacy browsers --> <meta name="application-name" content="Racer3K"> <link rel="icon" sizes="16x16 32x32 48x48" href="lo_def.ico"> <link rel="icon" sizes="512x512" href="hi_def.png"> </head> <body> </body> </html>
SERVICE WORKERS
UN SERVICE WORKER ES UNA SECUENCIA DE COMANDOS QUE TU
NAVEGADOR EJECUTA EN SEGUNDO PLANO, SEPARADO DE UNA PÁGINA WEB. Matt Gaunt SW
if ('serviceWorker' in navigator) { window.addEventListener('load', function() { navigator.serviceWorker.register('/sw.js') .then(function(registration)
{ // Registration was successful console.log('ServiceWorker registration successful'); console.log('with scope: ', registration.scope); }).catch(function(err) { // registration failed :( console.log('ServiceWorker registration failed: ', err); }); }); }
CACHE
SÓLO HAY DOS COSAS DURAS EN CIENCIAS DE LA COMPUTACIÓN:
INVALIDAR UNA MEMORIA CACHÉ Y NOMBRAR LAS COSAS. Confusio :p CACHE
•CACHE ONLY •NETWORK ONLY •CACHE FALLING TO NETWORK OR VICE
VERSA •CACHE & NETWORK RACE •CACHE THEN NETWORK •GENERIC FALLBACK •YOUR CUSTOM WAY :P
COMO SE VE UNA PWA
POKEDEX.ORG
LAS 3R’S PARA INCREÍBLES PWA’S
REDUCE REUSE REVIEW
REDUCE REUSE REVIEW
A MEDIDA QUE CONSTRUIMOS SITIOS QUE DEPENDEN CADA VEZ MÁS
DE JAVASCRIPT, A VECES PAGAMOS POR LO QUE ENVIAMOS DE MANERAS QUE NO SIEMPRE VEMOS FÁCILMENTE. Addy Osmani REDUCE
REDUCE REUSE REVIEW
REUSE Service Worker Network Website Cache
REDUCE REUSE REVIEW
INDEPENDIENTEMENTE DE LAS HERRAMIENTAS QUE ELIJA SU EQUIPO, UN PRESUPUESTO
ES ESENCIAL. SIN UNO, INCLUSO LOS MÁS AVANZADOS, Y “LIGEROS" FRAMEWORKS PUEDEN CREAR FÁCILMENTE APLICACIONES INFLADAS E INUTILIZABLES. Alex Russel REVIEW
NO EXISTEN SITUACIONES HIPOTETICAS
LA FUERZA USAR DEBES
None
•APP-Shell: La arquitectura que usaras. •Browser Dev Tools: Tu navaja
suiza. •IndexedDB: Almacenamiento estructurado de datos. •WorkBox: Set de librerias para PWAs.
•Lighthouse: Auditar nuestras PWAs. •Google PWA Checklist: Lo que tienes
que considerar. •SSR: Compilar tu HTML en el servidor. •SW-Precache: Generador de Service-Workers.
None
=> RTFM <= HTTPS://WEB.DEV
GRACIAS POR SU ATENCIÓN! @oscar_mcm