Building PWAs in the new Microsoft Edge

Microsoft is making it easier to discover progressive Web applications in Edge

Building PWAs in the new Microsoft Edge
Thinkstock

Microsoft’s switch from its EdgeHTML rendering engine to Chromium in the new version of Edge has made it easier for users to find and install PWAs (progressive Web apps). Navigate to a PWA like Twitter or Spotify in Edge and it’ll show an icon of a small circle with + inside it in the address bar. Click this and Edge installs the PWA version of the site, adding it to your start menu and supporting offline operation.

You shouldn’t confuse this with another Edge feature, the ability to add a browser tab to the start menu and use it like an app with minimal chrome around the page. This isn’t a PWA, it’s more akin to the Windows 8 feature that let you add bookmarks to the Windows taskbar—best thought of as a way of adding links to your favorite Web applications to Windows’ navigation.

Building PWAs

PWAs built using Edge are first-class Windows citizens. They install like any application, using HTTPS for security, and can access Windows services such as notifications. To get started, you must implement a service worker for your app, providing a proxy between the code running on a PC and your Web applications. They handle events and update local assets when necessary. Edge checks for new versions of service workers when users launch an application, ensuring that they always use the most up-to-date version. There’s no need to write code to manage updates; it’s all part of the PWA experience.

Tools such as PWAbuilder are a useful way of getting started, taking a URL and checking for the features needed to make it a PWA. The resulting checklist helps you get started with converting a Web application, while the service generates a basic manifest and helps you choose the appropriate service worker for your application. Once that’s done and you’ve put your code together, it’s time to test your PWA.

To continue reading this article register now

How to choose a low-code development platform