SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
Progressive Web Apps
Kevin Dantas
Developer Full-stack
PROGRESSIVE WEB APP
Offline
First
Performance
Otimizada
Push
Notification
Conexão
Segura
Carregamento
Instantâneo
PERFORMANCE
OTIMIZADA
60
FPS
CONEXÃO
SEGURA
OFFLINE
FIRST
CARREGAMENTO
INSTANTÂNEO
ENGAGING
<XML>
{JSON}
HTTPS/2
CASES
https://pwa.rocks
76% AUMENTO NAS
CONVERSÕES
76% AUMENTO NAS
CONVERSÕES
14%
iOS
30%
Android
https://ride.lyft.com
5xmais corridas do que
o esperado na web
https://ride.lyft.com
75 MB
17 MB
< 1 MB
Android
App
PWA
Tamanho
App
iOS
App
50%das reservas são feitas
para o mesmo dia
3xmais usuários fazendo
a primeira compra pelo
PWA do que pelo app
SERVICE WORKER
Ouvindo eventos fetch
if (navigator.serviceWorker) {
navigator.serviceWorker.register(‘/sw.js’)
}
Registrar um Service Worker
Criando o cache de arquivos estáticos
self.addEventListener(‘fetch’, evento => {
const url = new URL(event.request.url);
if (url.pathname.endsWith(‘.jpg’)) {
event.respondWith(
fetch(‘minha_imagem.jpg’)
)
}
})
Criando o cache de arquivos estáticos
self.addEventListener(‘install’, event => {
event.waitUntil(
caches.open(‘static-v1’)
.then(cache => cache.addAll([
‘/index.html’,
‘/styles.css’
]))
)
})
self.addEventListener(‘fetch’, event => {
event.respondWith(
caches.match(event.request)
.then(response =>
response || fetch(event.request)
)
)
})
Install Banners
Install Banners
- Um service worker registrado no seu site.
- Usar HTTPS.
- Ter frequência de visita.
Requisitos
Estrutura
{
"short_name": "Voice Memos,
"name": "Awesome Voice Memos",
"background_color": "#fff",
"icons": [
{
"src": "icon-1x.png",
"type": "image/png",
"sizes": "48x48"
}
],
"start_url": "index.html"
}
Awesome Voice Memos
Declarando um manifesto
<link rel="manifest" href="/manifest.webmanifest">
Before Install Prompt
Criando o cache de arquivos estáticos
var deferredPrompt;
window.addEventListener('beforeinstallprompt', (e) {
console.log('beforeinstallprompt Event fired');
e.preventDefault();
// Guarda o evento para ser dispoarado depois.
deferredPrompt = e;
return false;
});
// Chama o evento de mostrar o prompt
defferedPrompt.prompt();
Aquisição Engajamento Conversão Retenção
Accelerated Mobile Pages
Progressive Web Apps
Aquisição Engajamento Conversão Retenção
Accelerated Mobile Pages
Progressive Web Apps
Push Notifications
Aquisição Engajamento Conversão Retenção
Accelerated Mobile Pages
Progressive Web Apps
Push Notifications
Seamless Sign-In
One Tap Checkout
Lighthouse
Obrigado!
Kevin Dantas
Developer Full-stack

Mais conteúdo relacionado

Semelhante a Progressive Web Apps

JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...
JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...
JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...iMasters
 
Armazenamentos offline-ap is-para-pwa
Armazenamentos offline-ap is-para-pwaArmazenamentos offline-ap is-para-pwa
Armazenamentos offline-ap is-para-pwaEduardo Matos
 
AMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasAMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasDan Vitoriano
 
PROGRESSIVE WEB APPS - O melhor da WEB
PROGRESSIVE WEB APPS - O melhor da WEBPROGRESSIVE WEB APPS - O melhor da WEB
PROGRESSIVE WEB APPS - O melhor da WEBHebert Silva
 
Construindo aplicações saudáveis e prontas para envelhecer The 12ou15 Factors
Construindo aplicações saudáveis e prontas para envelhecer The 12ou15 FactorsConstruindo aplicações saudáveis e prontas para envelhecer The 12ou15 Factors
Construindo aplicações saudáveis e prontas para envelhecer The 12ou15 FactorsRoberto Santacroce Martins
 
WebAPI-Route-Translate-BasicAuth
WebAPI-Route-Translate-BasicAuthWebAPI-Route-Translate-BasicAuth
WebAPI-Route-Translate-BasicAuthJean Lima Lopes
 
Criando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APICriando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APIJessica Zanelato Soares
 
MobileConf 2013: PhoneGap
MobileConf 2013: PhoneGapMobileConf 2013: PhoneGap
MobileConf 2013: PhoneGapLoiane Groner
 
Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2
Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2
Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2Uilson Souza
 
Estratégia de middleware microsoft
Estratégia de middleware microsoftEstratégia de middleware microsoft
Estratégia de middleware microsoftEvilázaro Alves
 
Transição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suaveTransição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suaveRenan Moreira de Oliveira
 
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Amazon Web Services LATAM
 
Transformando o site da Magnetis em PWA
Transformando o site da Magnetis em PWATransformando o site da Magnetis em PWA
Transformando o site da Magnetis em PWALuís Felipe Souza
 

Semelhante a Progressive Web Apps (19)

JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...
JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...
JS Experience 2017 - Armazenamentos offline. APIs para PWA (Progressive Web A...
 
Armazenamentos offline-ap is-para-pwa
Armazenamentos offline-ap is-para-pwaArmazenamentos offline-ap is-para-pwa
Armazenamentos offline-ap is-para-pwa
 
AMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps ModernasAMP Roadshow SP 2019 - Web Apps Modernas
AMP Roadshow SP 2019 - Web Apps Modernas
 
PROGRESSIVE WEB APPS - O melhor da WEB
PROGRESSIVE WEB APPS - O melhor da WEBPROGRESSIVE WEB APPS - O melhor da WEB
PROGRESSIVE WEB APPS - O melhor da WEB
 
O poder das Progressive Web Apps
O poder das Progressive Web AppsO poder das Progressive Web Apps
O poder das Progressive Web Apps
 
PHP no Google AppEngine
PHP no Google AppEnginePHP no Google AppEngine
PHP no Google AppEngine
 
Construindo aplicações saudáveis e prontas para envelhecer The 12ou15 Factors
Construindo aplicações saudáveis e prontas para envelhecer The 12ou15 FactorsConstruindo aplicações saudáveis e prontas para envelhecer The 12ou15 Factors
Construindo aplicações saudáveis e prontas para envelhecer The 12ou15 Factors
 
WebAPI-Route-Translate-BasicAuth
WebAPI-Route-Translate-BasicAuthWebAPI-Route-Translate-BasicAuth
WebAPI-Route-Translate-BasicAuth
 
Criando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APICriando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma API
 
Web Performance Client Side
Web Performance Client SideWeb Performance Client Side
Web Performance Client Side
 
Browser Mobile - Opera
Browser Mobile - OperaBrowser Mobile - Opera
Browser Mobile - Opera
 
Aplicações web realtime
Aplicações web realtimeAplicações web realtime
Aplicações web realtime
 
MobileConf 2013: PhoneGap
MobileConf 2013: PhoneGapMobileConf 2013: PhoneGap
MobileConf 2013: PhoneGap
 
Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2
Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2
Mvp show cast2014-it-security-proxyreversowebapplicationproxywindowsserver2012r2
 
Estratégia de middleware microsoft
Estratégia de middleware microsoftEstratégia de middleware microsoft
Estratégia de middleware microsoft
 
Transição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suaveTransição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suave
 
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
 
Transformando o site da Magnetis em PWA
Transformando o site da Magnetis em PWATransformando o site da Magnetis em PWA
Transformando o site da Magnetis em PWA
 
Construindo apps móveis com AWS Mobile Hub
Construindo apps móveis com AWS Mobile HubConstruindo apps móveis com AWS Mobile Hub
Construindo apps móveis com AWS Mobile Hub
 

Progressive Web Apps