What PWA Can Do Today
A showcase of what is possible with Progressive Web Apps today.
A Progressive Web App (PWA) is a website that can be installed on your device and provide an app-like experience
read more
How to use this app
This app is itself a PWA so you can add it to the Home Screen or desktop your device and then check the
demos below to see what is supported on your device.
When the button below becomes enabled, you can add this app to your Home Screen or desktop.
add_to_home_screen
Add to home screen
Issues?
If you run into issues when implementing a PWA you can run the free
pwa-check tool
to help you identify and fix them.
For consistent release confidence, integrate the
PWA Runtime Audit into your CI/CD
pipeline.
Stay up to date
Join my email list for a weekly update on PWAs and new features of the modern web, tested and explained in plain
English.
Subscribe here
Demos
install_mobile
Using the beforeinstallprompt event, a native dialog can be displayed to install a web app
notifications_none
The Notifications API enables web apps to display notifications, even when the app is not active.
sms
Declarative Web Push enables web apps to receive push notifications without a service worker, even when the app is not active.
call
Incoming Call Notifications
Incoming call notifications allow web apps to display notifications when an incoming call is received.
airplay
AirPlay lets iOS or macOS users stream video from a PWA to an Apple TV, AirPlay
speaker or compatible smart TV.
picture_in_picture
The Document Picture-in-Picture API makes it possible to open an always-on-top window that can be populated
with arbitrary HTML content
folder_zip
The Compression Streams API enables web apps to compress and decompress streams of data, including files.
fingerprint
Web Authentication API (WebAuthn) enables passwordless authentication through your device's fingerprint
reader or an external USB Security Key.
lock
The WebAuthn PRF extension enables web apps to derive encryption keys using the user's passkey, without ever
accessing the private key itself.
language
Protocol handling enables web apps to register their ability to open links with particular URL schemes.
account_box
The Contact Picker API allows web apps to select the user's contacts after permission has been granted.
share
The Web Share API invokes the native share mechanism of the device and allows users to share
text, URLs or files.
screenshot
The viewport meta tag is used to control how the viewport behaves when an on-screen keyboard is shown.
play_circle_filled
The Media Session API allows web apps to display controls for media playback on a device's lock screen.
screen_share
Capture Handle and Captured Surface Control enable screen capturing web apps to remotely control captured web apps.
sync
The Background Sync API enables web apps to defer tasks when it's offline so they can be run when the network
connection is restored.
downloading
The Background Fetch API enables web apps to download large files in the background even when the app is
not running.
bluetooth
The Web Bluetooth API enables web apps to connect to Bluetooth Low Energy (BLE) devices and read values from or
write values to it.
credit_card
The Payment Request API provides a browser-based method to enable users to make payments on the web, using a credit
card, Apple Pay or Google Pay.
screen_lock_portrait
The Screen Wake Lock API enables web apps to prevent devices from dimming or locking the screen when the app
needs to keep running.
3d_rotation
The DeviceMotionEvent gives information about the speed of changes for the position and orientation of
the user's device.
network_check
The NetworkInformation API provides information about the connection of a device, allowing web apps to adapt
functionality based on network quality.
hearing
Speech recognition is part of the Web Speech API and provides the ability to recognize voice context from an
audio input.