> For the complete documentation index, see [llms.txt](https://appsecurity.gitbook.io/devops/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://appsecurity.gitbook.io/devops/ppc/ppc-langs/frontend/js-ts/packet-managers.md).

# Packet Managers

## npm

npm — **N**ode.js **p**acket **m**anager

### Инициализация проекта

```
$ npm init

или для создания проекта по умолчанию (заполнение полей)

$ npm init -y
```

По результату, создается файл `package.json`, который описывает проект и зависимости

Собрать (подтянуть зависимости) проект из package.json

```
$ npm i
```

### Работа с зависимостями

Установка зависимостей глобально в систему (например, чтобы можно было работать с какими-то инструментами напрямую из консоли ОС)

```
$ npm install -g typescrypt
$ npm i -g something
```

Установка зависимостей в проект. Пример установки в зависимости для разработки (ключ `-D` или  `--save-dev`):

```
$ npm i -D typescript
```

Это означает, что в релиз не попадет эта зависимость. Таким же образом устанавливают пакеты для тестов, моков и тп.

Установка в локальный проект зависимости:

```
$ npm i something
```

Как результат в `package.json` увидим в разделе `devDependencies` зависимость от `typescript`.

Установка пакета определенной версии

```
$ npm install bootstrap@5.0.1
```

Удалить зависимость

```
$ npm uninstall [package]
```

## npx

npm заточенные под React-проекты. См подробнее в соответствующем разделе.

## Yarn

yarn - другой пакетный менеджер от facebook: \
Его установка:&#x20;

```
$ npm i yarn -g
$ yarn -v
```

Использование:

```
Создание проекта
    yarn create strapi-app my-project
    
Запуск проекта
    yarn develop
```

## pnpm

Пакетный менеджер, есть предположение, что работает быстрее npm/yarn. Подтягивает зависимости не в node\_modules, а в целом, во внешнюю папку

Link: <https://github.com/pnpm/pnpm>
