Progressive Web Apps on Windows overview
Progressive Web Apps (PWAs) provide access to open web technologies for cross-platform interoperability and provide your users with a native, app-like experience customized for their devices. PWAs are 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.
From web search results and supporting app stores
Pin and launch from the home screen, Start Menu, Taskbar, and so on
Send push notifications, even when the app is not active
Works offline and in low-network conditions
Experience scales up (or down) with device capabilities
Provides a secure HTTPS endpoint and other user safeguards
Adapts to the user's screen size or orientation and input method
Share and launch from a standard hyperlink
Build (or convert) your existing website to a PWA to enhance engagement with your users. Enhancements include push notifications, app-like integration, and offline support. Continue to build your audience on the open web for users to discover your PWA through search and link-sharing. Best of all, your app is updated using your web server code.
PWAs on Microsoft Edge (Chromium)
When you build a Progressive Web App targeting web standard APIs, your app may be deployed across platforms and devices and take advantage of the device-specific capabilities as available. PWAs in Microsoft Edge (Chromium) add the following advantages to your website.
- Your app is built on a standards-based web platform.
- Allows your users to install your app directly from the browser.
- Allows your users to install your app without a Store-based deployment or registration.
Desktop PWAs are supported on any of the platforms Microsoft Edge (Chromium) is available. The following benefits are included.
Apps may be installed directly from within the browser using the Install icon in the navigation bar.
Apps may also be installed, run, and managed from the Settings > Apps menu
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 using the Setting and more (
...) menu including certificate validation, site permissions, tracking protection, and browser extensions
Full access to Microsoft Edge DevTools for debugging your app
For more information about PWA benefits, upcoming features, and short demos, navigate to Build 2020 PWA session.
To run as a PWA, your server-hosted web app should include following minimum requirements.
Protects your users by providing a secure connection for server or app communication. Service Workers and other PWA technologies only work with web resources served over a secure connection (or from
localhost for debugging purposes).
Uses Service Worker threads to act as network proxies between your server and client app. Service Worker threads provide offline support, resource caching, push notifications, background data sync, and page-load performance optimizations.
Provides a JSON-based metadata file that describes key information about your web app, so that Windows 10 and other host platforms provide your PWA users with an installable, native app-like experience. Key information includes icons, language, and URL entry point.
To be a great PWA, your app must also meet the following requirements.
Ensure your PWA works by testing in different browsers and environments.
Employs fluid layouts and flexible images. Responsive design includes the following elements that adapt your UX to your user's device.
Routes each page of your site to a unique URL so existing users may help you engage an even broader audience through social media sharing.
Uses code quality tools like the Webhint linter to optimize the efficiency, robustness, safety, and accessibility of your app.
Verifies your PWA against the Google baseline PWA checklist.
- Myth Busting PWAs
- A Progressive Roadmap for your Progressive Web App
- Offline POSTs with Progressive Web Apps
- PWA Q&A
- Betting on the Web
- Naming Progressive Web Apps
- Designing And Building A Progressive Web App Without A Framework (Part 1)
- Designing And Building A Progressive Web App Without A Framework (Part 2)
- Designing And Building A Progressive Web App Without A Framework (Part 3)