Progressive Web Apps on Windows

With Progressive Web Apps (or simply PWAs) you dont have to decide between using open web technologies for cross-platform interoperability and providing your users with a native app-like experience customized for their device. That's because PWAs are just websites that are progressively enhanced to function like native apps on supporting platforms. The qualities of a PWA combine the best of the web and native apps.

Discoverable icon

Discoverable

From web search results and supporting app stores

Installable icon

Installable

Pin and launch from the home screen

Re-engageable icon

Re-engageable

Send push notifications, even when the app isn't active

Network Independent icon

Network Independent

Works offline and in low-network conditions

Progressive icon

Progressive

Experience scales up (or down) with device capabilities

Safe icon

Safe

Provides a secure HTTPS endpoint and other user safeguards

Responsive icon

Responsive

Adapts to the user's screen size / orientation and input method

Linkable icon

Linkable

Share and launch from a standard hyperlink

By building or converting your existing site to a PWA, you can better engage your existing audience with push notifications, app like integration and offline support. At the same time, you can continue building your audience on the open web, as users discover your PWA through search and link-sharing. Best of all, you can update your app by simply updating your web server code.

PWAs on Microsoft Edge (Chromium)

When you build a Progressive Web App targeting web standard APIs, your application can be deployed across platforms and devices and take advantage of the device specific capabilities as available. PWAs in Microsoft Edge (Chromium) are completely standards based from a web platform perspective and enable users to install the app directly from within the browser without the need for Store based deployment or registration. Desktop PWAs are supported on any of the platforms Microsoft Edge (Chromium) is available, including Windows 7, Windows 10 and Mac OS. Other benefits include:

  • Applications can be installed directly from within the browser via the "Install" icon in the navigation bar

Install application flyout and icon

  • Applications can also be installed, run and managed from the "Settings"->"Apps" menu Application menu items under settings
  • Web Notifications are integrated into the Windows notification system
  • Shared cookie store with the browser profile that installed the app
  • Access to other browser features via the "..." menu including certificate validation, site permissions, tracking protection and browser extensions
  • Full access to Microsoft Edge DevTools for debugging your app

Important

To tailor PWAs specifically for Windows 10 that call WinRT APIs from JavaScript, see the documentation specific to the EdgeHTML PWA features here: Progressive Web Apps (EdgeHTML). You can learn about testing your PWA on Windows 10, and distributing it in the Microsoft Store.

Requirements

To run as a PWA, your server-hosted web app will at minimum require:

  • [X] HTTPS. Protect your users by providing a secure connection for server/app communication. Service workers and other PWA technologies will only work with web resources served over a secure connection (or from localhost for debugging purposes).

  • [X] Service workers. Use service worker threads to act as network proxies between your server and client app in order to provide offline support, resource caching, push notifications, background data sync, and page load perf optimizations.

  • [X] Web app manifest. Provide a JSON-based metadata file describing key information about your web app (such as icons, language, and URL entry point) so that Windows 10 and other host platforms can provide your PWA users with an installable, native app-like experience.

To be a great PWA, your app will also need:

If you'd like to turn your PWA into a Microsoft Store application, head to the Progressive Web Apps (EdgeHTML) documentation.

Current availability

Browser engine support for Progressive Web Apps calls for a number of architectural components, the most significant being the networking infrastructure underlying the Fetch API.

For the upcoming Microsoft Edge (Chromium) release in 2020, the browser platform itself has full support for these features that will work across devices where Microsoft Edge (Chromium) browser is supported. Microsoft Edge (Chromium) is currently in it's final beta with a generally available stable release planned for January 2020 with broad distribution following. More information on Microsoft Edge availability