NPM/Yarn cheat sheet
Создание package.json
В интерактивном режиме:
npm init
yarn init
Без вопросов:
npm init -f
yarn init --yes
Установка зависимостей из package.json
npm i
npm install
yarn
Виды зависимостей
dependencies
- runtime зависимостиdevDependencies
- утилиты для конвертации, минификации, оптимизации и т. п.peerDependencies
(вроде только в yarn) - нужно авторам пакетовoptionalDependencies
- если что-то не установится, то ошибки не будет
Установка пакета без добавления в package.json
Бывает нужно для тестов. В yarn
опции нет, авторы аргументируют тем, что такие действия могут иметь хуёвые последствия. Типа если потом репу с проектом склонировать ещё где-то, то после установки зависимостей код может отвалиться.
npm i <package>
npm install <package>
npm add <package>
# с версии 5 с ключём --no-save
Установка с указанием зависимостей
yarn
по-умолчанию добавляет в dependencies
npm
только с 5 версии
# в dependencies
npm i <package>
yarn add <package>
# в devDependencies
npm i --save-dev <package>
npm i -D <package>
yarn add --dev
yarn add -D
# в optionalDependencies
npm i --save-optional <package>
npm i -O <package>
yarn add --optional <package>
yarn add -O <package>
TODO: дописать про глобальную установку и указание куда ставить, чтобы не использовать sudo