# PWAs on Microsoft Edge (sidebar, store)

> How Microsoft Edge installs a PWA through its browser install feature, lists PWAs in the Microsoft Store, and supports a deprecated sidebar manifest member.

**In one line:** Per Microsoft's documentation, Edge installs a qualifying
PWA through its own app-installation feature and the PWA then runs like
other apps on Windows; PWAs are also treated like other apps in the
Microsoft Store, letting users go from discovery to installation to running
the app without opening the browser first, and a PWA can opt into Edge's
sidebar via a manifest member Microsoft has marked for deprecation.

## Installing through Edge

Per Microsoft's documentation, a PWA "can be installed... by using the app
installation feature of a supporting browser," and once installed it
functions like other apps. Per MDN's guide to triggering the install prompt,
Chromium-based browsers — Edge included — fire a `beforeinstallprompt` event
a page can use to show its own install button instead of relying on the
browser's own install entry point:

```js
window.addEventListener('beforeinstallprompt', (event) => {
  event.preventDefault();
  // Per MDN, save the event and show a custom "Install" button;
  // `beforeinstallprompt` is non-standard and implemented only in
  // Chromium-based browsers.
});
```

## The sidebar

Edge can pin a PWA into its sidebar via the `edge_side_panel` manifest
member. As of Microsoft's July 2026 documentation update, this feature "is
being deprecated" and "will soon no longer be supported" — see
[Manifest edge_side_panel](/reference/manifest/edge-side-panel/) for the full
requirements, syntax, and runtime-detection code, and treat it as a feature
to migrate away from rather than adopt.

## Microsoft Store distribution

Per Microsoft's documentation, PWAs are treated like other apps in the
Microsoft Store, so users can go from discovery to installation to running
the app without ever opening the browser.

## Detecting an installed, standalone PWA at runtime

Per MDN's guide to creating a standalone app, `matchMedia('(display-mode:
standalone)')` reports whether the page is running in the display mode an
installed app uses — this is the general cross-browser technique, not
something Edge-specific documented by Microsoft:

```js
function isInstalledPwa() {
  if (!('matchMedia' in window)) {
    // Fallback: matchMedia isn't available — assume this is an ordinary tab.
    return false;
  }
  return window.matchMedia('(display-mode: standalone)').matches;
}

if (isInstalledPwa()) {
  // Hide any "Install this app" call-to-action; it's already installed.
} else {
  // Show the install affordance once `beforeinstallprompt` has fired.
}
```

## Where it is supported

Microsoft's overview says PWAs can run on all devices, work across operating
systems, and be installed on mobile devices. It describes deep operating-system
integration for PWAs used on Windows with Edge generally, rather than tying that
integration specifically to Store-distributed PWAs. The sidebar documentation
describes the feature in Microsoft Edge without stating an operating-system
restriction.
The `beforeinstallprompt` event the install flow above relies on is
non-standard and, per MDN, implemented only in Chromium-based browsers.

## Practical checklist

- [ ] Feature-detect `beforeinstallprompt` before relying on it — per MDN
      it's non-standard and Chromium-only, not guaranteed to fire.
- [ ] Don't build new functionality around `edge_side_panel`; Microsoft's own
      docs say the sidebar feature is being deprecated.
- [ ] Don't assume Store distribution and the browser's own install feature
      are the same install path — Microsoft's documentation describes them
      as separate ways to get a PWA onto a device.

## Where to go next

- [Manifest edge_side_panel](/reference/manifest/edge-side-panel/)
- [PWAs on Chrome and Android](/reference/platforms/chrome-android/)
- [PWAs on ChromeOS](/reference/platforms/chromeos/)