RO
← Back to the blog

Optical App Dev

PWA: the app you install straight from the browser

What a PWA is, what it needs to be installable on Android, iPhone and desktop, what it can do once installed, and when it beats an app store app.

The Optical Design desk · app & tech writer4 min read

A PWA (progressive web app) is a website built like an app, which people can install straight from the browser, without the App Store or Google Play. Once installed, it gets an icon on the phone or computer and opens in its own window, without the browser bar. It doesn't take much to make one installable: HTTPS and a file called a manifest.

What it is, exactly

To the user, a PWA looks like an app: an icon next to the others, one tap to launch, full screen. To us, it's still a website: one codebase that runs in any browser on any device. People who don't install it use it like a regular site, with the same core features.

What separates it from a plain website comes down to three pieces:

  • the manifest, a small file that sets the app's name, icons, start page and how it opens;
  • HTTPS, meaning the site is served securely;
  • optionally, a service worker, a script that can keep pages and data on the phone so the app works without a signal.

What it needs to be installable

Chrome requires the app not to be installed already, to be served over HTTPS, and to have a manifest with:

  1. a name (name or short_name);
  2. icons, at least one at 192 px and one at 512 px;
  3. a start page (start_url);
  4. an app-style display mode (standalone, fullscreen, minimal-ui or window-controls-overlay).

Chrome also looks at engagement: the person has to have tapped or clicked on the page at least once and spent at least 30 seconds on it before Chrome offers to install it. A service worker isn't required for installation, but without one you don't get offline support.

How it installs on each device

DeviceHow to install
Android, ChromeThe browser offers to install; on phones with Google services, it installs as a real app
Android, Samsung InternetSame, on Samsung phones
iPhone and iPadShare menu, "Add to Home Screen"; since iOS 16.4 this works from Safari, Chrome, Edge and Firefox
Desktop, Chrome and EdgeFrom the address bar or the browser menu
Mac, Safari 17 and laterFile, "Add to Dock"

On iPhone the browser never prompts you to install, and a site can't add its own button that triggers installation. So when a PWA is meant for iPhone users, we add a short in-app explainer with the steps, shown only to people visiting from iOS.

On Android, browsers other than Chrome and Samsung Internet just add a home screen shortcut that opens the site in the browser.

What it can do once installed

  • Its own window. In standalone mode, the app opens without browser controls and looks like a regular app.
  • Notifications on iPhone. Since iOS 16.4, a web app added to the Home Screen can ask permission to send push notifications. On iPhone, notifications only work once the app is installed, not from Safari.
  • Badge counts. Also since iOS 16.4, the app can put the number of new messages or orders on its icon.
  • Offline use, if it has a service worker and the right data cached.

What it can't do as well as a store app: access to some phone features is more limited, especially on iPhone, and it doesn't show up in App Store or Google Play search unless it's packaged separately for the store.

When we pick a PWA

A PWA makes sense when:

  • the app is used often by the same people (staff, regular customers, members), who can be shown once how to install it;
  • you want a single version for phone and desktop;
  • you want updates without store review: we push the new version to the server and everyone has it the next time they open the app;
  • the budget doesn't cover two separate native apps.

We go with a store app when you need advanced phone features or in-app purchases through the store, or when people look for you directly in the App Store. We compared the two in more detail in web app or app store app.

See what we build and how we choose the tech on our App Dev services page.

Sources

  1. Making PWAs installable, MDN Web Docsthe manifest, HTTPS, the optional service worker, installing on Android, iOS 16.4, Safari 17 and no custom install button on iOS
  2. What does it take to be installable?, web.devChrome's criteria: manifest fields, 192 and 512 px icons, the 30-second rule
  3. Web Push for Web Apps on iOS and iPadOS, WebKitpush notifications and badges for Home Screen web apps starting with iOS 16.4

Checked: surse Xenia Pușcașu · editare Nora Vlăsceanu · SEO Mihnea Tăbăcaru

Want this for your business?

Tell us in two lines what you need. We come back with a plan and a quote.