Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Progressive Webapps

Progressive Webapps

Emmanuel DEMEY

February 23, 2018
Tweet

More Decks by Emmanuel DEMEY

Other Decks in Programming

Transcript

  1. “PWAs are the missing technology link to bring the best

    features of the web to solve the issues of native apps and closed marketplaces.” Chris Heilmann
  2. Alibaba (e-commerce / China) • 76% de conversions en plus

    entre navigateurs; • 14% en plus d'utilisateurs actifs/mois sous iOS; 30% en plus sous Android; • 4X plus de taux d’interaction à partir de "Add to Homescreen".
  3. Flipkart (e-commerce / India) • 76% Temps passé sur Flipkart

    lite vs. expériences mobile précédentes: • 3x plus de temps passé sur le site; • 40% en plus de taux d'engagement • 70% en plus de taux de conversion entre ceux arrivant via "Add to Homescreen"; • 3x mois d'usage de données.
  4. LightHouse • Outil permettant d’auditer une application Web • Integré

    à Chrome Devtools ou via un module NPM • Retourne un score indiquant le taux de conformité • Règles pour la sécurité, a11y, RWD, SEO, ...
  5. Le Manifest • Fichier JSON contenant de métadonnée de votre

    application • Utilisé par le navigateur pour détecter comment il doit gérer votre site • Active la fonctionnalité de “Add to Home Screen”
  6. Add to Home Screen • Fonctionnalité activée si le Manifest

    est valide, et si le site est servi en HTTPS • Invitation affichée en fonction du nombre de visites de l’utilisateur
  7. Le Service Worker • Proxy entre votre application et votre

    serveur • Toujours actif même si l'application est fermée • Nécessite HTTPS • Accès au DOM et à XHR • Événement d’un SW: install, activate, fetch, push ou sync
  8. AppShell • Rendre le layout principal accessible offline • Optimisation

    du temps de chargement • Utilisation de la Cache API
  9. IndexedDB • API permettant de stocker des données côté client

    • API assez complexe • Basée sur des callbacks • Utilisation de librairies externes pour simplifier l’utilisation
  10. IndexedDB - via LocalForage • Librairie plus simple à utiliser

    • Fallback vers WebSQL et localStorage • Support des callbacks et promises • API similaire à localStorage
  11. BackgroundSync • Ajout d’un événement Sync aux Services Workers •

    Assure l’envoie d’une requête lorsque l’utilisateur est online • Traitement exécuté tant que la promise est rejetée
  12. Emmanuel DEMEY @EmmanuelDemey CTO Zenika Lille GDG Lille - DevFest

    Lille Google Developer Expert Merci !!!!!