Wat is een Progressive Web App
Mick van Vliet - 31 Oktober 2018
Inmiddels heb je de term Progressive Web App (PWA) misschien wel eens voorbij horen komen. Deze PWA’s brengen hoge verwachtingen met zich mee. Zo zouden ze de gehele mensheid vooruit helpen, wereldvrede brengen, hongersnood beëindigen, balans terugbrengen in ‘the force’ en nog veel meer. In het proces zouden ze zelfs het mobiele web verder versterken en helpen ze developers een grotere doelgroep te bereiken buiten de omheining van de app stores.
Dit klinkt natuurlijk allemaal geweldig…maar wat zijn Progressive Web Apps nu eigenlijk?
“Progressive Web Apps zijn gebruikerservaringen met het bereik van het web, en ze zijn: betrouwbaar, snel, en betoverend.” – Progressive Web Apps, Google
Een PWA is een middenweg tussen (mobiele) websites en apps die je downloadt in de appstores. PWA’ maken gebruik van de laatste technologische ontwikkelingen, om zo een app-like ervaring aan te bieden. Native apps kunnen pushberichten sturen, werken offline, laden vanaf het home-scherm, enz. Eventueel aanpassen naar: Met Mobile Web Apps was dit eerder niet mogelijk, maar Progressive Web Apps lossen dit op. Door gebruik te maken van gestandaardiseerde technologieën, is het nu mogelijk om de functionaliteiten van native apps over te brengen naar de mobiele browsers.
Al met al zijn PWA’s een collectie van verschillende technologieën, ontwerpconcepten, en Web API’s die het gevoel geven dat je een native app gebruikt.
Om als PWA geclassificeerd te mogen worden moet er voldaan worden aan de volgende eisen:
- Progressief – Werkt voor elke gebruikers ongeacht de keuze van de browser
- Responsief – Valt te gebruiken op ieder device (mobiel, tablet en desktop)
- Onafhankelijk van connectiviteit – Online of offline, ook op slechte netwerken
- App-like – Voelt aan als een app door het gebruik van de design principes
- Fresh – Altijd up-to-date
- Veilig – Voorzien van HTTPS
- Discoverable – Herkenbaar als app en vindbaar middels zoekmachines
- Re-engagable – Laat bezoekers terugkeren door pushberichten
- Installeerbaar – Bewaar de app op het home-scherm
- Koppelbaar – Eenvoudig te delen met de URL, zonder installatie
Service workers
Om dit allemaal voor elkaar te krijgen worden Progressive Web Apps gedragen door service workers. Dit is de zeer krachtige technologie die de offline functionaliteit, pushberichten, content caching, en nog veel meer mogelijk maakt.
Service workers zijn niks meer dan JavaScript-bestanden, en werken op de achtergrond getriggerd door events. Service workers zijn zeer gecompliceerd, maar omdat ze veel als dezelfde functionaliteit omvatten (e.g. offline functionaliteit) kun je gebruik maken van bestaande ‘recepten’.
Voordelen van een Progressive Web App
Dit zijn de drie belangrijkste reden om voor een Progressive Web App te kiezen:
- Makkelijk in development en lagere kosten
- Cross-platform, net als normale websites
- Makkelijk in gebruik, enkel een url nodig; Geen installatie.
Heb je een idee voor een Progressive Web App of heb je een applicatie die je om wilt bouwen naar een Progressive web app? Neem dan vooral contact met ons op, wij helpen je graag op weg.
Bronnen:
https://ionicframework.com/docs/developer-resources/progressive-web-apps/
https://blog.ionicframework.com/what-is-a-progressive-web-app/
https://developers.google.com/web/progressive-web-apps/?hl=nl
https://addyosmani.com/blog/getting-started-with-progressive-web-apps/
https://stxnext.com/blog/2017/06/14/progressive-web-apps-features-and-business-advantages/
https://apiumhub.com/tech-blog-barcelona/progressive-web-apps/