Les PWA ou Progressive Web App représentent des applications web enrichies répondant à 4 problématiques majeures : Performance, Intégrée, Fiable et Engageante.

Origines

Ce terme est donc apparu en 2015 quand il a été inventé par Frances Berriman (développeuse front-end / designer) et son mari Alex Russell (ingénieur chez google travaillant sur le navigateur Chrome).

Leur volonté était simple : proposer un nouveau modèle d’applications web enrichies permettant un réengagement de l’utilisateur tout en offrant une alternative viable aux applications natives. Pourquoi ? Simplement car le web est ouvert et accessible par tous quelque soit le système d’exploitation !

Ils ont donc réfléchit à un système permettant de faire évoluer une application web sans casser l’existant. C’est ainsi qu’est né le terme PWA pour Progressive Web App : une application web que l’on peut enrichir de manière progressive pour avoir une expérience utilisateur comparable à celle des applications natives !

Objectif des PWAs

Qu’est ce qu’une PWA ?

Une PWA est une application web “évolutive” qui va s’enrichir de fonctionnalités progressivement afin d’obtenir une expérience utilisateur proche de celle d’une expérience native.

Les nouveautés technologiques amenées par une PWA sont donc les suivantes :

Une PWA peut fonctionner en mode hors-ligne via ce qui s’appelle un Service Worker. Elle peut être “installée” dans le lanceur d’applications via la présence du “App Manifest”. Une PWA peut faire revenir réengager ses utilisateurs avec la possibilité de pousser des notifications “Push2Phone”

Les PWA ou réellement application web moderne

Le terme F.I.R.E. est plus souvent utilisé quand on veut parler de ce que doit être une PWA.

Ce terme est apparu en 2018 pour faire le distinguo entre les briques technologiques offertes et amenées par les PWA (Service Worker, App Manifest,…) et les enjeux d’une application web moderne.

F.I.R.E veut donc dire :

F pour Fast, l’application web est performante.

I pour Integrated, l’application web propose une expérience proche du natif.

R pour Reliable, l’application web est fiable et disponible

E pour Engaging, l’application web est réengageante, les utilisateurs reviennent.

Une PWA sont proches de la platforme

Les PWA s’appuient pour proposer une expérience proche du natif sur des APIs et standards du web visant à donner plus de possibilités aux navigateurs. Aujourd’hui, le web nous permet d’accéder aux fonctionnalités suivantes :

Les avantages d’une PWA

Une PWA possède de multiples avantages :

Elle est accessible sur n’importe quel environement puis ce qu’il suffit d’avoir une navigateur pour y accéder.

Elle peut fonctionner hors-ligne et peut être installée avec vos applications natives.

Elle peut vous permettre de mutualiser vos développements en ne choisissant qu’un seul langage pour cibler plusieurs plateformes.

Elle propose une alternative à vos utilisateurs et permet d’en acquérir encore plus car certains ne se seraient pas tournés vers du natif.

Elle est tout le temps à jour.

Les limites d’une PWA

Cependant, il faut noter qu’une PWA possède quelques limitations :

Vous ne pourrez pas stocker des fichiers de façon ilimités. Chaque plateforme possède des quotas qu’il faut connaitre.

Elle ne pourra se retrouver facilement sur l’Apple store. La présence d’une PWA devra obligatoirement passer par une application hybride.

Vous n’aurez pas accès à toutes les fonctionnalités offert par plateforme car certains sont trop spécifiques en fonction de l’OS choisi.

Les myths d’une PWA

Il faut avoir bien conscience que ce terme est entouré d’un certain nombre de myths et incompréhensions :

Non les PWAs ne cherchent pas à tuer les applications natives. Les PWA sont bien disponibles sur toutes les plateformes. Les PWA marchent sur iOS (il faut juste avoir conscience que tout ne marche pas)

Comment faire sa première PWA ?

Pour bien débuter sa première PWA, il faut commencer par mettre en place un Service Worker, il s’agit de la brique minimale pour qu’une application ou un site web soit considéré comme une PWA.

Ensuite, il faudra créer un App Manifest si vous souhaitez que l’application soit installable.

D’une manière générale un certains nombre d’outils existent pour vous simplifier la vie et la mise à disposition d’un Service Worker ou de l’App Manifest pour votre PWA.

Un bon point de départ pour démarrer sa première PWA est de consulter la liste des tutorials PWA

Comment avoir sa PWA sur les stores ?

La publication d’une application sur les sotres dépendra de la plateforme ciblée.

Dans tous les cas. Une application dite “hybride” vous permettra de proposer votre application PWA sur les stores.

Pour iOS, vous serez obligé de passer par cett étape tandis que pour Android, il existe depuis peu le concept de TWA (Trust Web Activities) qui vous permet de proposer une application type PWA “directement” sur le store playstore.

Références