npx: ejecutar paquetes sin instalar es posible
npx es el ejecutor de paquetes de npm. Descubre cómo usar herramientas temporales sin ensuciar tu sistema, ejecutar paquetes locales de otros proyectos y crear proyectos rápidamente con scaffolding.
npx es el complemento perfecto para npm. Mientras npm gestiona paquetes, npx los ejecuta. Esta distinción es fundamental: npx te permite ejecutar cualquier paquete npm sin instalarlo primero, ya sea global o localmente.
En Esta lección vas a descubrir cómo npx resuelve problemas comunes: ejecutar herramientas de un solo uso, probar paquetes sin compromiso, y scaffold proyectos rápidamente. Verás que es una de las herramientas más versátiles del ecosistema npm.
Al terminar, usarás npx diariamente para tareas que antes requerían instalaciones complicadas.
- El ejecutor de paquetes de npm.
- npx significa 'Node Package Executor'. Viene incluido con npm desde la versión 5.2. Su objetivo es simple: ejecutar paquetes sin instalarlos globalmente o añadirlos como dependencia.
- Cuando ejecutas npx nombre-paquete, npx busca el paquete en el registro de npm, lo descarga temporalmente en una carpeta de caché, lo ejecuta y limpia. El usuario nunca ve este proceso: solo ve que el comando funciona.
- Ejecuta paquetes sin instalarlos
- Busca automáticamente en registry
Qué es npx y por qué existe
El ejecutor de paquetes de npm.
npx significa 'Node Package Executor'. Viene incluido con npm desde la versión 5.2. Su objetivo es simple: ejecutar paquetes sin instalarlos globalmente o añadirlos como dependencia.
Cuando ejecutas npx nombre-paquete, npx busca el paquete en el registro de npm, lo descarga temporalmente en una carpeta de caché, lo ejecuta y limpia. El usuario nunca ve este proceso: solo ve que el comando funciona.
- Ejecuta paquetes sin instalarlos
- Busca automáticamente en registry
- Usa caché local para evitar descargas repetidas
- Útil para CLI de un solo uso
Casos de uso más comunes
Cuándo usar npx en tu día a día.
El caso más popular de npx es scaffolding de proyectos: create-react-app, create-next-app, create-vue, etc. En lugar de instalar globalmente estas herramientas, npx las ejecuta una vez y listo.
Otro uso común es ejecutar servidores locales temporales: npx serve para servir una carpeta, npx http-server para crear un servidor rápido. También para ejecutar scripts de otros proyectos sin clonarlos.
Flags útiles de npx
Personaliza el comportamiento de npx.
npx tiene varias opciones que cambian su comportamiento: -p permite especificar qué versión quieres ejecutar, --no-install impide que npx intente instalar si el paquete no existe, -y acepta automáticamente los prompts.
Estos flags son útiles cuando necesitas una versión específica de una herramienta o quieres evitar comportamientos interactivos.
Ejecutar paquetes locales con npx
También sirve para paquetes en tu proyecto.
npx no solo busca en el registry: también busca en node_modules/.bin de tu proyecto. Esto es útil cuando tienes un paquete instalado localmente pero no quieres usar npm run o la ruta completa.
Además, puedes ejecutar módulos de node directamente: npx -m 0.12.0 -e "console.log(process.version)" ejecuta código con una versión específica de Node.
npx vs npm run: cuándo usar cada uno
Diferencias clave y cuándo elegir.
npm run ejecuta scripts definidos en package.json del proyecto. npx ejecuta cualquier paquete del registro npm. Para scripts del proyecto, usa npm run; para herramientas externas, usa npx.
La diferencia práctica: npm run dev ejecuta el script 'dev' de tu proyecto. npx devtools ejecuta el paquete 'devtools' de npm registry.
- npm run: scripts en package.json del proyecto
- npx: cualquier paquete del registry npm
- npx: útil para comandos de un solo uso
- npm run: para tareas frecuentes del proyecto