Yassine Benabbas
Sylvain Pollet-Villard
Février 2018
“A Progressive Web App uses modern web capabilities to deliver an
app-like user experience.”
Google, 2015
Fiabilité: le site doit se charger instantanément
peu importe les conditions réseau
Rapidité: la navigation et les interactions doivent
toujours être fluides, sans lag dans les
animations et le défilement de la page
Attractivité: le site doit s’intégrer naturellement
à tout appareil avec une expérience utilisateur immersive
Pas besoin d'être installé pour être utilisé
Les technos web sont par nature rétrocompatibles.
Si une fonctionnalité n'est pas supportée,
l'application reste fonctionnelle.
Ce principe s'appelle l'Amélioration Progressive
Illustration de Tiffany Tse
Thread asynchrone qui tourne en tâche de fond et qui intercepte toutes les requêtes réseau d'une page web
Enregistrement du service worker, côté applicatif :
Actions à l'installation du Service Worker (fichier sw.js) :
Interception des requêtes et utilisation du cache (fichier sw.js) :
Au délà du online/offline, des situations diverses et complexes.
La connectivité Internet est variable et difficilement mesurable.
Les problématiques et contraintes techniques dépendent
fortement du contexte (ex: usage dans les transports)
Stratégies communes de gestion du cache :
Stratégies communes de gestion d'erreurs:
Ne pas attendre la réponse du serveur pour actualiser la vue
permet un gain de performance perçue énorme.
A coupler avec une bonne stratégie de gestion d'erreurs
Différentes implémentations
Un outil open-source de Google
qui génère un rapport avec un score / 100
Disponible en:
Un support complet de documentation accessible à tous:
pwa-cookbook.js.org
Sensibiliser à la valeur ajoutée des PWA
Des templates projet pour démarrer rapidement
Du support personnalisé pour répondre à vos questions