PWA (Progressive Web App)

PWA (Progressive Web App) is a web application built with standard web technologies (HTML, CSS, JavaScript) that can be installed on a device, run offline, and behave like a native app. It uses a service worker and a web app manifest to deliver an app-like experience directly from the browser.

How a PWA works: core building blocks

A PWA is not a separate technology but a set of capabilities layered on a standard website. Three components turn a regular web app into an installable, offline-capable one:

  • Service worker: a JavaScript script that runs in the background, intercepts network requests, and caches assets. It enables offline access, background sync, and push notifications.
  • Web app manifest: a JSON file declaring the app name, icons, start URL, theme colors, and display mode. It allows the browser to offer an "Add to Home Screen" install prompt.
  • HTTPS: PWAs require a secure context. Service workers only register over HTTPS (localhost excepted), which is non-negotiable.

Because a PWA is served over the web, it is indexed by search engines and accessed via a URL, unlike apps locked inside an app store. Installation adds an icon to the home screen or desktop and launches the app in a standalone window without browser chrome.

PWA vs native app: what to choose

The decision between a PWA and a native (iOS/Android) app depends on the depth of device integration required, distribution strategy, and budget. A single PWA codebase serves every platform; a native strategy typically means separate iOS and Android builds.

CriterionPWA (Progressive Web App)Native app
CodebaseSingle web codebase, all platformsSeparate per platform (Swift/Kotlin or cross-platform framework)
DistributionDirect via URL, no app store requiredApp Store / Google Play, with review process
Installation"Add to Home Screen" from the browserDownload and install from the store
Offline supportYes, via service worker cachingYes, built in
Device API accessBroad but limited on some platforms (notably parts of iOS)Full access to device hardware and OS APIs
DiscoverabilityIndexable by search enginesFound through app store search
UpdatesInstant, server-side, no store approvalPushed through the store, subject to review

Capability parity is uneven across operating systems. Android and desktop browsers support most PWA features; iOS has historically been more restrictive, particularly for push notifications and some hardware APIs, though support has been expanding.

Business benefits and common use cases

For a B2B project, a PWA reduces the cost of maintaining multiple codebases while keeping the reach of the open web. The main advantages are:

  • Single codebase: one application to build, test, and maintain across mobile, tablet, and desktop.
  • No store dependency: no submission delays, no platform commission, instant updates pushed to all users.
  • Offline resilience: cached assets and data keep the app usable on unstable or absent connections.
  • Discoverability and shareability: every screen has a URL that can be linked, indexed, and bookmarked.
  • Lower install friction: users can try the app instantly in the browser before installing.

Typical use cases include internal business tools and dashboards, field applications used in low-connectivity environments, customer portals, e-commerce storefronts, and content-heavy platforms where SEO and fast loading matter. A PWA is less suited to products that depend on intensive hardware access or platform-specific features only a native build can guarantee.

Questions fréquentes

Yes. A PWA uses a service worker to cache the application shell, assets, and selected data on the device. Once cached, the app can load and function without a network connection, syncing changes when connectivity returns. The degree of offline functionality depends on how the caching and background sync strategies are implemented.

No. A PWA is distributed directly through a web URL and installed via the browser's "Add to Home Screen" prompt, with no store submission or review. That said, a PWA can optionally be packaged and listed in app stores (for example through tools like Trusted Web Activity on Android) if store presence is a requirement.

PWAs run on iOS through Safari and support installation and offline use, but Apple has historically limited certain capabilities compared with Android, particularly around push notifications and some hardware APIs. Support has been improving over time. For products that need deep iOS integration, a native or hybrid approach may still be preferable.

A responsive website adapts its layout to different screen sizes but still requires a live connection and runs only inside the browser. A PWA builds on a responsive site by adding a service worker and a manifest, making it installable, offline-capable, and able to behave like an application with its own icon and standalone window.

Have a mobile app project? We help you choose the right technical approach and build it.

See our mobile app expertise