What Can Progressive Web Apps Do?

Progressive Web Apps (PWA) are enhanced websites that offer some additional functionality possibilities over a normal website. The capabilities are not as powerful as a native app (a traditional mobile app), but for most use cases a PWA is more than enough. If your app does not need low level access to hardware (things like fingerprint scanners, bluetooth etc) a PWA might be the right option for you. The major app stores all have submission guidelines for PWA's to their stores as well, so it is possible to submit PWA's for app store listings, although (just like native apps) there is no guarantee they will be accepted.

Depending on the browser there is an incredible amount of options we can include with a PWA. Functionality includes installation, access to the camera, real time communication, notifications, device GPS, payments, and offline functionality. This doesn't include the wide range of possibilities offered from including API's and functionality from your website. This list is also growing with partial or planned support for features like NFC, device orientation, bluetooth access, speech recognition, and clipboard access.

Notifications

There are two types of notifications we can talk about, Push Notifications and Web Notifications. Push Notifications come from a web server to the browser and Web Notifications come from inside the application. Unfortunately, Safari browsers do not currently support this functionality.

This functionality can really be useful to keep users engaged and updated.

Payments

The Payments feature allows access to the native payment information stored on the device. A really great explanation can be found in Mozilla's developer documentation:

Many problems related to online shopping-cart abandonment can be traced to checkout forms, which can be difficult and time consuming to fill out and often require multiple steps to complete. The Payment Request API is meant to reduce the number of steps needed to complete a payment online, potentially doing away with checkout forms. It aims to make the checkout process easier, by remembering a user's details, which are then passed along to a merchant hopefully without requiring a HTML form.

So we can see this is meant to both simplify the process and provide the user with a consistent and familiar way to pay.

Geolocation

Geolocation is a great way to customize your app based on the users current location. The ability to show a user where they are in relation to your service is a great way to keep a user engaged. This feature allows you to tailor your app based on the users location without asking them for their address information.

As you can see there are a lot of options when enhancing your site to a PWA. For a list of options that are supported or have planned support based on browser visit What Web Can Do Today?

PWA Features