Introduccion a pnpm - Gestor de paquetes de alta velocidad

Principiante | 30 min de lectura | 2025.12.15

Lo que aprenderas en este tutorial

✓ Instalacion de pnpm
✓ Comandos basicos
✓ Configuracion de workspaces
✓ Migracion desde npm

Step 1: Instalacion

# 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 paquetes
pnpm install

# Agregar dependencias
pnpm add express
pnpm add -D typescript

# Eliminar
pnpm remove express

# Ejecutar scripts
pnpm run dev
pnpm dev  # run es opcional

# Actualizar
pnpm update
pnpm update --latest

Step 3: Configuracion de workspaces

# pnpm-workspace.yaml
packages:
  - 'apps/*'
  - 'packages/*'
// package.json
{
  "name": "my-monorepo",
  "private": true,
  "scripts": {
    "dev": "pnpm -r dev",
    "build": "pnpm -r build"
  }
}

Step 4: Operaciones dentro del workspace

# Instalar en paquete especifico
pnpm add lodash --filter web

# Referenciar paquete interno
pnpm add @repo/ui --filter web --workspace

# Ejecutar en todos los paquetes
pnpm -r run build

# Ejecucion paralela
pnpm -r --parallel run dev

Step 5: Dependencias en package.json

// apps/web/package.json
{
  "dependencies": {
    "@repo/ui": "workspace:*",
    "@repo/utils": "workspace:^1.0.0"
  }
}

Step 6: Migracion desde npm

# Eliminar node_modules
rm -rf node_modules

# Eliminar package-lock.json
rm package-lock.json

# Instalar con pnpm
pnpm import  # Convertir desde package-lock.json
pnpm install

Step 7: Archivo de configuracion

# .npmrc
shamefully-hoist=true
strict-peer-dependencies=false
auto-install-peers=true

Mejores practicas

✓ Gestionar con corepack
✓ Hacer commit de pnpm-lock.yaml
✓ Configuracion del proyecto en .npmrc
✓ workspace:* para referencias internas

Resumen

pnpm es un gestor de paquetes rapido y eficiente en uso de disco. Con la funcionalidad de workspaces, puedes gestionar monorepos facilmente.

← Volver a la lista