Glossary

Progressive Web App (PWA)

A web application that installs to the home screen or desktop, works offline and receives push notifications, built from a web app manifest, a service worker and HTTPS instead of an app store package.

General definition

Progressive Web App (PWA) describes a website built to behave like an installed application. The term was coined at Google in 2015, but the ingredients are open web standards: a web app manifest (a W3C specification, a JSON file with the name, icons, start URL, display mode and theme colour), a service worker (a script the browser runs in the background to cache assets, serve pages offline and handle push events) and HTTPS, which browsers require before either will run. With those in place, Chrome, Edge, Safari and Firefox offer an install prompt or an Add to Home Screen option, and the app opens in its own window without browser chrome.

What a PWA can do that a plain website cannot:

  • Install to the home screen, dock or Start menu with its own icon and splash screen.
  • Load instantly and work offline or on poor networks from the service worker cache.
  • Receive push notifications through the Web Push API, including on iOS since 16.4 for apps added to the home screen.
  • Run background sync, share targets, file handling and badge counts on supporting browsers.

The trade-offs are real. Web push on iOS requires the user to install the app first, and background execution is more limited than in a native app. Access to some device features (Bluetooth, contacts, low-level audio) varies by browser, and platform policy can shift, as Apple showed when it briefly removed home-screen web apps in the EU in 2024 before reversing course. For many products, though, a PWA removes the app-store review cycle, ships one codebase to every device and still supports the notification and offline behaviour users expect from a messaging app.

In the Ethora ecosystem

The Ethora web app and the React chat component are standard web code, so a product built on them can be shipped as a PWA: add a manifest, register a service worker and serve over HTTPS, and users can install the chat on desktop or phone without an app store. Ethora already relies on a service worker for web push, using Firebase Cloud Messaging to deliver notifications to browsers, with push credentials configured self-serve in the admin panel.

Where a team needs the deeper device integration a PWA cannot offer, the same backend serves the React Native SDK and the native iOS and Android SDKs, with direct APNs for Apple push and VoIP push for calls. A common pattern is a PWA for the web and desktop audience and a store app for the mobile core, both on one set of rooms, users and history, all built with React on the web side.

Get started

Build with Ethora’s open SDKs

Chat, calls and AI agents as npm packages and native SDKs, open source with enterprise source access. Talk to our team.

Start Free
Free tier available Enterprise SLA No vendor lock-in