What is pwa?

A Progressive Web App (PWA) is a website that looks and works like a native mobile app. It uses modern web technologies to load quickly, work offline, send push notifications, and can be added to a device’s home screen without going through an app store.

Let's break it down

  • Responsive design: The layout adapts to any screen size, from phones to desktops.
  • Web App Manifest: A small JSON file that tells the browser the app’s name, icons, theme colors, and how it should appear when installed.
  • Service Worker: A background script that caches files, enables offline use, and handles push notifications.
  • HTTPS: PWAs must be served securely to protect user data and allow service workers to run.
  • Installable: Users can “install” the PWA to their home screen, launching it in a full‑screen window without browser UI.

Why does it matter?

PWAs give developers a single codebase that works everywhere, reducing the time and cost of building separate native apps. For users, they provide fast, reliable experiences that work even with spotty internet, and they don’t clutter devices with large app downloads.

Where is it used?

  • Twitter Lite - a lightweight version of Twitter that loads fast on slow connections.
  • Starbucks - lets customers browse the menu and place orders offline.
  • Pinterest - offers a smooth, app‑like browsing experience on the web.
  • Uber - a PWA for quick ride requests in markets where native apps are heavy.
  • Forbes, The Washington Post, and many news sites - deliver fast article loading and push notifications.

Good things about it

  • Works on any device with a modern browser.
  • No need for app‑store approval; updates are instant.
  • Offline capability improves reliability.
  • Smaller download size compared to native apps.
  • SEO‑friendly because it’s still a website.
  • Can use device features like camera, geolocation, and push notifications.

Not-so-good things

  • Limited access to some hardware features (e.g., Bluetooth, advanced sensors) compared to native apps.
  • Performance may be lower for graphics‑intensive tasks like high‑end gaming.
  • Not all browsers fully support every PWA feature (e.g., iOS Safari has restrictions).
  • Users may be less aware of “installing” a PWA because there’s no app store presence.
  • Some enterprises still prefer native apps for tighter security and device management.