Installable sites: every Anticode site can live on a home screen
Every site you publish with Anticode can be installed on a phone or a computer like an app: its own icon, its own window with no browser bar, and pages the visitor has already opened still showing when the connection drops. There's nothing to switch on and no app store involved. The manifest, the icons and the offline support are added by Anticode as the site is served.
What "installable" means here
A progressive web app is a website that tells the browser enough about itself to be installed: a name, colours, icons and a page to open at launch, all in a web app manifest. A browser that sees one offers to add the site to the home screen or the app launcher, and the installed site opens full screen in a window of its own. For a café's menu, a class timetable or a booking page people return to every week, that's often all the "app" a small business needs. To make website installable PWA-style by hand you'd write the manifest, draw icons at several sizes and register a service worker. Anticode does all three for every published site.
What each site serves
| Address | What it is |
|---|---|
/manifest.webmanifest | The site's name from its title, a short name of whole words up to 12 characters, its description, a standalone display, and theme and background colours from the design |
/icon-192.png, /icon-512.png | A rounded square in your action colour with the site's initials |
/icon-maskable-512.png | A full-bleed version with the initials inside the safe area, for launchers that crop icons into circles or squircles |
/apple-touch-icon.png | An opaque 180-pixel icon for iPhone and iPad, which apply their own mask |
/_app/start, /_app/sw.js, /_app/offline | The launch page, the offline worker and the offline page |
The initials come from the first letters of the first two words of the title, skipping words such as "the" and "and". If the text colour on your action colour wouldn't be readable, black or white is used instead. Each page also gets the manifest link, a theme colour and the Apple home-screen tags added as it's served. The stored HTML isn't changed, so the security checks that passed it still describe exactly what's stored.
Offline, without scripts on your pages
Offline support needs a service worker, and a service worker can only be registered by a script. Anticode's published pages run no scripts, so the registration happens on one page Anticode owns: the launch page the installed app opens first. It holds a single script pinned by its hash, registers the worker, then moves straight on to your home page. Your own pages keep their no-script policy.
- Network first. The worker only handles ordinary page and file requests on your site. Form posts and requests to other sites never touch it, and pages are always fetched fresh when there's a connection, so an update shows at once.
- The cache only when the network fails. The visitor sees the last copy of a page they've opened before, or a plain offline page in your colours for one they haven't.
- Small and bounded. It keeps the home page, the launch and offline pages, the manifest and icons, plus the last 60 other pages or files, and the last 60 photos and font files from the design engine's fixed hosts.
- It cleans up after itself. If the site is unpublished, the next online launch finds no home page, and the worker deletes its cache and unregisters.
How visitors install it
The App stores section of the builder's Console opens with a card headed Install as an app, no store needed, with the steps to pass on to customers:
- iPhone and iPad: open the site in Safari, tap Share, then Add to Home Screen.
- Android: open it in Chrome, tap the menu, then Install app or Add to home screen.
- Computer: in Chrome or Edge, click the install icon in the address bar.
If you want a listing in Apple's or Google's store as well, the same section downloads a native project; see app-store packaging.
Limits
- Offline means already visited. Pages a visitor never opened show the offline page. Forms can't be sent offline.
- No push notifications. An installed site can't send notifications from Anticode.
- Icons are monograms. The icon is drawn from your initials and colours; you can't upload a logo for it.
- People who don't install don't get the worker. Ordinary visitors in a browser tab are unaffected, which is deliberate.
- Browsers decide the prompt. When and whether a browser offers to install is up to the browser; iPhones never prompt, so tell visitors the Share steps.
For a general walk-through of the idea, including what to check before you tell customers to install, see the guide to making a website installable.
Questions people ask
Do I need to switch anything on?
No. Every published site serves its manifest, icons and offline files automatically.
Does installing the site add JavaScript to my pages?
No. The one script is on Anticode's own launch page, pinned by its hash. Your published pages keep their policy that refuses scripts.
Will the installed app update when I republish?
Yes. The worker fetches pages from the network first, so the installed app shows the current site whenever there's a connection.
Can I choose the app's icon?
Not today. It's generated from the site's initials and action colour, so changing the action colour changes the icon.