Help centre

Answer

What is the Web Share API?

Short answer

The Web Share API lets a page call navigator.share({ title, text, url }) to open the operating system’s native share sheet, so users can send a link to Messages, Mail, social apps or any other installed share target — the same experience as sharing from a native app.

By InstantPWA engineering·Reviewed July 25, 2026

Support

Works on iOS Safari, Android Chrome, and desktop Chrome/Edge on Windows and macOS where an OS-level share sheet exists. Desktop Linux has limited support.

Sharing files

navigator.canShare() can check whether the browser supports sharing File objects (images, PDFs) before calling share(), which some older browser versions do not support.

Related: Web Share Target

The companion Web Share Target API lets an installed PWA register itself as a destination other apps can share to, not just a source.

Related
What is the Web Share Target API?
The Web Share Target API lets an installed PWA declare a share_target entry in its manifest so it shows up in the device’s share sheet as a destination — the same way Twitter or Google Photos appear when you tap "Share" from another app. The declared URL receives the shared title, text, url or files as a request.
What is a PWA?
A PWA (Progressive Web App) is a regular website that meets three technical criteria — HTTPS, a Web App Manifest and a service worker — so browsers let visitors install it on their home screen. Once installed, it launches like a native app, works offline and can send push notifications.
What is the Screen Wake Lock API?
The Screen Wake Lock API lets a page request navigator.wakeLock.request("screen") to prevent the device screen from dimming or auto-locking while the page is active — useful for recipe apps being followed hands-free, presentation tools, or video calls. The lock automatically releases when the tab is hidden or closed.
What is a Trusted Web Activity?
A Trusted Web Activity (TWA) is Google’s official way to package a PWA as a full-screen Chrome Custom Tab inside a thin native Android shell, so it can be distributed through the Google Play Store while still rendering as your existing web app with no separate native codebase.
PWA vs Electron: what is the difference?
A PWA installs through the browser and reuses the browser’s already-installed engine, so it downloads in kilobytes and stays a few MB on disk. Electron bundles an entire Chromium and Node.js runtime into every app, typically 100-200MB, but in exchange gives full Node.js filesystem and OS access that the web sandbox does not allow.