# Web apps

> Turn a website you use every day into an app of its own: its own window and icon, in Apps, in Search and in the Dock.

Source: https://wolos.org/manual/webapps

## What it is

A web app is a website with a launcher of its own. It opens in a window without tabs or an address bar, has its own name and icon in Apps and in Search, and can sit in the Dock like any installed app. Mail, a calendar, a chat or a project board stop being one tab among thirty.

You make one with a single line typed in the terminal. If you have not used the Terminal before, [The terminal](/manual/terminal) shows you how in ten minutes; this page only needs the one line below.

## Why WolOS does it this way

The sites you keep open all day should look and switch like apps: each has its own window, **Super+Tab** finds it, and the Dock shows when it is open. A launcher is only a small file in your own account, so there is nothing to install and nothing to update. The address you type is checked before the launcher is written, so a web app can only ever open that address.

## How

### Make one

1. **Open Terminal.** Press **Super+Space**, type "te" and press Return.
2. **Type the line below and press Return.** The name comes first, then the whole address starting with `https://`.

   ```sh
   wol webapp add Mail https://mail.example.com
   ```

   WolOS fetches the site's own icon. Without one, the launcher gets a plain web icon.
3. **Open it.** Press **Super+Space** and type "Mail": the web app is listed as an Application. Click it, and drag its icon to the Dock if you want it there.

   You see the site in a window of its own, with no tabs and no address bar.

Two choices go after the address:

| Add | What it does |
|---|---|
| A picture file, an `https://` address or the name of an icon | Uses this icon instead of the site's own. |
| **--own-profile** | Gives the web app its own sign-ins, apart from your browser. Use it to be signed in to two accounts of the same site, or to keep a site's cookies to itself. |

Without **--own-profile** the web app shares sign-ins with the WolOS browser, so you are already signed in wherever you are signed in there.

### See and remove your web apps

Type the same line with **list** instead of **add** to show your web apps with their addresses, or with **remove** and a name to take one away. Removing deletes the launcher and the icon it fetched; a picture file of yours is left alone.

### Web apps that come with a plugin

A plugin can bring web apps of its own. They sit next to yours while the plugin is on and go away when you turn the plugin off ([Plugins](/manual/plugins)).

### Assistants

An assistant can add or remove a web app only through an approval sheet, and the sheet appears every time: there is no Always Allow for it.

## A worked example

Alice reads her mail in a browser tab that keeps getting lost among others. She opens Terminal, types the line with her mail provider's address and presses Return. She presses **Super+Space**, types "Mail", opens the web app and drags its icon to the Dock. Next morning one click on the Dock opens her mail in a window of its own, and **Super+Tab** switches between the mail and her letter like between any two apps.

## If something goes wrong

What the Terminal says:

| It says | What to do |
|---|---|
| Type the full web address, starting with https://, without spaces or quotes. | Copy the address from the browser's address bar, the whole of it. |
| Give the web app a short name with letters or digits. | Use a name of up to 64 characters with at least one letter or digit. |
| A web app named "Mail" already exists. | Choose another name, or remove the old one first. |
| There is no web app named "Mail". | List your web apps to see the exact names. |

| Problem | What to do |
|---|---|
| The icon is a plain web icon | The site offers none WolOS can fetch. Remove the web app and add it again with an icon after the address. |
| You are signed out of the site in the web app | A web app made with **--own-profile** has its own sign-in: sign in once inside it. |
