Installing progressive web apps
Tags: thesession, pwas, progressive, web
Published: 2022-02-02 16:16:03

---
title: Installing progressive web apps
published: true
date: 2022-01-18 12:12:48 UTC
tags: thesession,pwas,progressive,web
canonical_url: https://adactio.com/journal/18772
---

I don’t know about you, but it seems like everyone I follow on Twitter is playing [Wordle](https://www.powerlanguage.co.uk/wordle/). Although I don’t play the game myself, I think it’s pretty great.

Not only does Wordle have [a very sweet backstory](https://www.nytimes.com/2022/01/03/technology/wordle-word-game-creator.html), but it’s also unashamedly on the web. If you want to play, you go to the URL `powerlanguage.co.uk/wordle`. That’s it. No need to download an app.

That hasn’t stopped some nefarious developers trying to trick people into downloading their [clones of Wordle](https://daringfireball.net/2022/01/apple_app_store_world_ripoffs) from app stores. App stores, which are meant to be curated and safe, are in fact [filled with dodgy knock-offs and scams](https://www.theverge.com/2021/4/21/22385859/apple-app-store-scams-fraud-review-enforcement-top-grossing-kosta-eleftheriou). Contrary to popular belief, the web is quite literally a safer bet.

[Wordle](https://www.powerlanguage.co.uk/wordle/) has a web app manifest, which means you can add it to your home screen and it will behave just like a native app (although I don’t believe it has offline support). That’s great, but [the process of adding a web app to your home screen on iOS](https://adactio.com/journal/18252) is ludicrously long-winded.

Macworld published an article detailing [how to get the real Wordle app on your iPhone or iPad](https://www.macworld.com/article/589410/how-to-wordle-app-iphone-ipad.html). On the one hand it’s great to see this knowledge being spread. On the other hand it’s dispiriting that it’s even necessary to tell people that they can do this, like it’s a hidden nerdy secret just for power users.

At this point I’ve pretty much given up on Apple ever doing anything about this pathetic situation. So what can I do instead?

Well, taking my cue from that Macworld article, the least I can do is inform people how they can add a progressive web app to their home screen.

That’s what I’ve done on [thesession.org](https://thesession.org/). I’ve published [a page on how to install The Session to your home screen](https://thesession.org/app).

On both Android and iPhone the journey to installing a progressive web app begins with incomprehensible iconography. On Android you must first tap on the unlabeled kebab icon—three vertical dots. On iOS you must first tap on the unlabeled share icon—a square with an arrow coming out of it.

![The menu icon on Android.](https://thesession.org/img/screenshots/android-menu.png) ![The share icon on iOS.](https://thesession.org/img/screenshots/iphone-menu.png)

When it comes to mobile operating systems, consumer choice means you choose which kind of mystery meat to eat.

I’ve included screenshots to help people identify these mysterious portals. For iOS I’ve also included a video to illustrate the quest to find the secret menu item buried beneath the share icon.

<video src="https://thesession.s3.amazonaws.com/video/ios-homescreen.mp4" controls poster="https://thesession.org/img/screenshots/ios-homescreen.png" preload="none" width="375" height="667">
</video>

I’ve linked to [the page with the installation instructions](https://thesession.org/app) from [the site’s “help” page](https://thesession.org/help) and [the home page](https://thesession.org/).

Handy tip: when you’re adding a `start_url` value to your web app manifest, it’s common to include a query string like this:

```
start_url: "/?homescreen"

```

I’m guessing most people to that so they can get analytics on how many people are starting from an icon tap. I don’t do analytics on The Session but I’m still using that query string in my `start_url`. On the home page of the site, I check for the existence of the query string. If it exists, I don’t show the link to [the installation page](https://thesession.org/app). So once someone has installed the site to their home screen, they shouldn’t see that message when they launch The Session.

If you’ve got a progressive web app, it might be worth making a page with installation instructions rather than relying on browsers to proactively inform your site’s visitors. You’d still need to figure out the right time and place to point people to that page, but at least the design challenge would be in your hands.

Should you decide to take a leaf out of the Android and iOS playbooks and use mystery meat navigation to link to such a page, there’s an emoji you could potentially use: 📲

It’s still worse than using actual words, but it might be better than some random combination of dots, squares and arrows.

(I’m not really serious about using that emoji, but if you do, be sure to use a sensible `aria-label` value on the enclosing `a` element.)