PWA (Progressive Web App) jest rozwiązaniem, które od niedawna pojawiło się i od razu stało się bardzo gorącym tematem, jeżeli chodzi o e-commerce. Powszechnie kojarzy się z wykorzystaniem w największych i najbardziej znanych światowych serwisach takich jak Alibaba, Forbes, Twitter czy The Washington Post. Ze względu na to, iż PWA pozwala na znaczne zwiększenie wydajności oraz skalowalności coraz częściej jego wykorzystanie brane jest pod uwagę przez średnie i duże sklepy internetowe.

progressive web apps w ecommerce

 

Jak działa Progressive Web App?

Progressive Web App zostało stworzone w celu zapewnienia użytkownikom ponad przeciętnych doświadczeń zakupowych. Zgodnie z założeniem PWA niezależnie od urządzenia, z jakiego korzysta użytkownik powinien mieć możliwość w szybki i łatwy sposób dostać się do najważniejszych treści oraz produktów, którymi jest zainteresowany. Z punktu widzenia użytkownika działanie PWA nie różni się od aplikacji mobilnej instalowanej na telefonie, jednak działa jak standardowa strona internetowa. Niezależnie czy użytkownik straci dostęp do internetu czy też utracone zostanie połącznie z serwerem aplikacji idealnie by było gdyby miał możliwość złożenia zamówienia oraz przeglądania treści. Na tą potrzebę odpowiada właśnie PWA. Jedną z najważniejszych zalet oprócz znacznego odciążenia serwera oraz przyspieszenia wyświetlania treści użytkownikom jest właśnie możliwość działania w trybie offline. Należy podkreślić, iż aby PWA mogło zostać powszechnie wykorzystywane konieczne było spełnienie przez tą technologię kilku dodatkowych warunków:

- wsparcie responsywności,

- działanie w trybie offline,

- obsługa przez protokół https,

- umożliwienie wyświetlania notyfikacji dla użytkowników, będących offline,

 

 

Czym różni się Progressive Web App od standardowej aplikacji webowej?

PWA w swoich założeniach stawia na silne oddzielenie frontendu od backendu, tzn. w przeciwieństwie do tradycyjnej aplikacji webowej tworzony jest łącznik, przez który następnie przekazywane są dane do PWA i trzymane w pamięci podręcznej tzw. local storage. Z jednej strony PWA uruchamiane jest po stronie przeglądarki jak zwykła strona internetowa, z drugiej jednak jej działanie przypomina nieco działanie natywnej aplikacji, nie wymagającej połączenia z internetem do późniejszego działania.

 

Czym różni się Progressive Web App od aplikacji mobilnej?

Aplikacja mobilna tworzona jest wyłącznie na potrzeby urządzeń mobilnych. Z punktu widzenia użytkownika telefonu komórkowego aplikacja mobilna jest dużo bardziej rozbudowana i oferuje użytkownikom najszerszą gamę możliwości takich jak wysyłanie powiadomień push, wykorzystanie skanera kodów kreskowych, beaconów, czy dostępny do natywnych funkcji telefonów.

 

Główne założenia działania PWA

Zwiększenie wydajności i szybkości działania aplikacji to główne założenie działania PWA. Realizowane jest poprzez rozdzielenie funkcji realizowanych po stronie backendowej i frontendowej. Komunikację pomiędzy tymi dwoma komponentami umożliwia REST API, wykorzystujące format JSON. Komunikacja odbywa się poprzez dopytanie konkretnym zapytaniem o konkretne dane z wykorzystaniem protokołu HTTP. Dzięki takiemu rozwiązaniu frontend działa niezależnie od backendu, a całość aplikacji można lepiej kontrolować i rozwijać niezależnie.

 

Czy warto wdrażać PWA?

To zależy. PWA z pewnością jest przyszłością ecommerce, jednak obecnie wdrożenie tej technologoii jest na tyle drogie, iż sprawdzi się wyłącznie w przypadku średnich i dużych sklepów internetowych, pozwalając im zdobyć przewagę niedostępną dla mniejszych graczy. Koszt wdrożenia PWA jest obecnie zbliżony do postawienia dużego sklepu internetowego np. na platformie Magento. Jak wskazują badania przeprowadzone przez Alibabę, a opublikowane przez Google, użycie PWA zwiększyło konwersję z przeglądarki aż o 76%, liczbę aktywnych użytkowników mobilnych zwiększyło odpowiednio o 14% dla IOS oraz 30% dla Androida. PWA to z pewnością przyszłość. Zespół Global4Net prowadzi obecnie prace rozwojowe na wdrożeniem tej technologii na platformie Magento z wykorzystaniem języka React.