Progressive Web Apps for Beginners

38
Progressive Web Apps for Beginners Pietro Alberto Rossi

Transcript of Progressive Web Apps for Beginners

Page 1: Progressive Web Apps for Beginners

Progressive Web Apps for Beginners

Pietro Alberto Rossi

Page 2: Progressive Web Apps for Beginners

Pietro Alberto [email protected]

www.sprik.it

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 3: Progressive Web Apps for Beginners

Before starting…

Page 4: Progressive Web Apps for Beginners

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Before starting

Page 5: Progressive Web Apps for Beginners

Before starting

13% Mobile web

87% AppsSource: comScore Mobile Metrix, U.S., Age 18+, June 2015

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 6: Progressive Web Apps for Beginners

Before starting

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 7: Progressive Web Apps for Beginners

Before starting

Progressive Web Apps!!!

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 8: Progressive Web Apps for Beginners

What are the Progressive Web Apps?

Page 9: Progressive Web Apps for Beginners

Progressive Web Apps

Progressive Web Applications take advantage of new technologies to bring the best of mobile sites and native applications to users. They're reliable, fast, and engaging.

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 10: Progressive Web Apps for Beginners

Progressive Web Apps

A Progressive Web App is• Progressive - Works for every user, regardless of browser choice because it's built with progressive enhancement as a core tenet.

• Responsive - Fits any form factor: desktop, mobile, tablet, or whatever is next.

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 11: Progressive Web Apps for Beginners

Progressive Web Apps

• Connectivity independent - Enhanced with service workers to work offline or on low-quality networks.

• App-like - Feels like an app to the user with app-style interactions and navigation because it's built on the app shell model.

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 12: Progressive Web Apps for Beginners

Progressive Web Apps

• Fresh - Always up-to-date thanks to the service worker update process.

• Safe - Served via HTTPS to prevent snooping and to ensure content hasn't been tampered with.

• Discoverable - Is identifiable as an "application" thanks to W3C manifest and service worker registration scope, allowing search engines to find it.

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 13: Progressive Web Apps for Beginners

Progressive Web Apps

• Re-engageable - Makes re-engagement easy through features like push notifications.

• Installable - Allows users to "keep" apps they find most useful on their home screen without the hassle of an app store.

• Linkable - Easily share via URL, does not require complex installation.

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 14: Progressive Web Apps for Beginners

History Case

Page 15: Progressive Web Apps for Beginners

The Washington Post

https://wapo.com/pwa

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 16: Progressive Web Apps for Beginners

The Washington Post

Add to Home Screen

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 17: Progressive Web Apps for Beginners

The Washington Post

Add to Home Screen

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 18: Progressive Web Apps for Beginners

The Washington Post

Splash Screen

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 19: Progressive Web Apps for Beginners

The Washington Post

Launch it!

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 20: Progressive Web Apps for Beginners

The Washington Post

Task Manager

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 21: Progressive Web Apps for Beginners

AliExpress

2x more page views

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 22: Progressive Web Apps for Beginners

Jumia

38% open rate

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 23: Progressive Web Apps for Beginners

A bit of codes

Page 24: Progressive Web Apps for Beginners

manifest.json

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 25: Progressive Web Apps for Beginners

manifest.json

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 26: Progressive Web Apps for Beginners

manifest.json

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 27: Progressive Web Apps for Beginners

pwa.html

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 28: Progressive Web Apps for Beginners

main.js

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 29: Progressive Web Apps for Beginners

sw.js

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 30: Progressive Web Apps for Beginners

Final Considerations

Page 31: Progressive Web Apps for Beginners

Final Considerations

• Instant Loading • Add to Home Screen • Push Notifications • Fast • Secure • Responsive

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 32: Progressive Web Apps for Beginners

Final Considerations

Code, code and code!

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 33: Progressive Web Apps for Beginners

Final Considerations

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 34: Progressive Web Apps for Beginners

Final Considerations

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

https://medium.com/dev-channel/why-progressive-web-apps-vs-native-is-the-wrong-question-to-ask-fb8555addcbb

Page 35: Progressive Web Apps for Beginners

Questions?

Page 36: Progressive Web Apps for Beginners

References

+PietroAlbertoRossi

@sprik89

Pietro Alberto Rossi

Pietro Alberto Rossi

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 37: Progressive Web Apps for Beginners

Resources

• Washington Post PWA - https://wapo.com/pwa • SSLMate - https://sslmate.com • Let’s Encrypt - https://letsencrypt.org/ • Manifest Generator - https://brucelawson.github.io/manifest/ • Manifest Validator - https://manifest-validator.appspot.com/ • Favicon Generator - http://realfavicongenerator.net/ • Code labs - https://codelabs.developers.google.com/pwa-roadshow

@: [email protected] | TW: @sprik89 | G+: +PietroAlbertoRossi

Page 38: Progressive Web Apps for Beginners

Grazie