# CLI

```sh
npm install -g https://dev.pairx.org/download/pairx-apps-cli.tgz
```

Нужен Node.js 20 или новее. Как пользоваться — в разделе [Инструменты](https://dev.pairx.org/tools).

## pairx create {#create}

```sh
pairx create <папка> [--template html]
```

Создаёт в пустой (или новой) папке `index.html` — рабочее приложение из одного файла. Шаблон один: `html`.

## pairx dev {#dev}

```sh
pairx dev <файл.html | папка> [--port 5174] [--participants 2] [--personal] [--no-iphone-limits]
```

| Флаг | Что делает |
| --- | --- |
| `--port` | Порт эмулятора, по умолчанию 5174. Эмулятор слушает только `127.0.0.1`. |
| `--participants` | Сколько участников одного чата показать рядом: 1–4, по умолчанию 2. |
| `--personal` | Личный контекст у каждого участника, как при открытии по ссылке. |
| `--no-iphone-limits` | Не отключать `WebAssembly`, `indexedDB`, WebAudio и WebGL. В Pairx на iPhone их всё равно нет. |

Папка — пакет из нескольких файлов с `pairx.app.json`; файл `.html` — приложение быстрого режима. При старте `dev` печатает те же находки, что `check`.

## pairx check {#check}

```sh
pairx check <файл.html | папка>
```

Проверки сервиса при отправке: манифест, пределы, типы файлов и признаки, из-за которых версия уйдёт на ручную проверку.

| Знак | Значит |
| --- | --- |
| `✗` | Сервис не примет приложение. |
| `!` | Примет, но версия уйдёт на ручную проверку. |
| `·` | Предупреждение: в песочнице это не заработает. |

Код выхода: `0` — сервис примет приложение (даже с `!`), `1` — не примет, `2` — неверные аргументы.
