O que voce vai aprender neste tutorial
✓ Instalacao do pnpm
✓ Comandos basicos
✓ Configuracao de workspace
✓ Migracao do npm
Step 1: Instalacao
# npm
npm install -g pnpm
# Homebrew
brew install pnpm
# corepack (Node.js 16.13+)
corepack enable
corepack prepare pnpm@latest --activate
Step 2: Comandos basicos
# Instalar pacotes
pnpm install
# Adicionar dependencia
pnpm add express
pnpm add -D typescript
# Remover
pnpm remove express
# Executar script
pnpm run dev
pnpm dev # run pode ser omitido
# Atualizar
pnpm update
pnpm update --latest
Step 3: Configuracao de workspace
# pnpm-workspace.yaml
packages:
- 'apps/*'
- 'packages/*'
// package.json
{
"name": "my-monorepo",
"private": true,
"scripts": {
"dev": "pnpm -r dev",
"build": "pnpm -r build"
}
}
Step 4: Operacoes dentro do workspace
# Instalar em pacote especifico
pnpm add lodash --filter web
# Referenciar pacote interno
pnpm add @repo/ui --filter web --workspace
# Executar em todos os pacotes
pnpm -r run build
# Execucao paralela
pnpm -r --parallel run dev
Step 5: Dependencias no package.json
// apps/web/package.json
{
"dependencies": {
"@repo/ui": "workspace:*",
"@repo/utils": "workspace:^1.0.0"
}
}
Step 6: Migracao do npm
# Remover node_modules
rm -rf node_modules
# Remover package-lock.json
rm package-lock.json
# Instalar com pnpm
pnpm import # Converter do package-lock.json
pnpm install
Step 7: Arquivo de configuracao
# .npmrc
shamefully-hoist=true
strict-peer-dependencies=false
auto-install-peers=true
Boas praticas
✓ Gerenciar com corepack
✓ Commitar pnpm-lock.yaml
✓ Configurar projeto com .npmrc
✓ Usar workspace:* para referencias internas
Resumo
pnpm e um gerenciador de pacotes rapido e eficiente em uso de disco. Com recursos de workspace, voce pode gerenciar monorepos facilmente.
← Voltar para a lista