JS: Configuración del entorno

Teoría: NPX

Cuando trabajamos en proyectos de JavaScript, usamos muchas herramientas que nos ayudan a que el código funcione mejor, sea más ordenado o esté listo para ejecutarse en el navegador. Algunas de estas herramientas no se usan dentro del código como funciones o librerías, sino que funcionan desde la terminal del sistema, es decir, como programas que ejecutamos por comandos.

Vamos a ver qué tipos de herramientas encontramos y cómo usarlas de forma sencilla en nuestros proyectos.


¿Qué tipo de herramientas son?

Aquí vemos algunas herramientas comunes que usamos desde la línea de comandos:

Tipo de herramientaEjemplosQué hacen
Formateo de códigoprettierOrganizan el código según reglas de estilo comunes
Compiladores / TranspiladoresbabelTransforman nuestro código para que funcione en más lugares
Automatización de tareas y empaquetadogulp, webpackAgrupan archivos, optimizan imágenes, compilan CSS, etc.

Estas herramientas no se importan en el código con import o require. En vez de eso, las usamos directamente en la terminal con comandos como npx, npm run, o incluso escribiendo la ruta completa del ejecutable. Veamos un ejemplo práctico usando una de las más conocidas: Prettier.


¿Qué es Prettier y para qué sirve?

Prettier es una herramienta que toma tu código y lo reorganiza (o formatea) de forma automática para mantener un estilo de codificación consistente. Esto es útil especialmente cuando varias personas trabajan en el mismo proyecto, porque evita discusiones sobre espacios, sangrados o saltos de línea.

Mira este código sin formatear:

const  fn = (a, b) => {
const  c = a + b; return  c;
} // Es válido, pero cuesta leerlo, ¿cierto?

Después de aplicarle Prettier

const  fn = (a, b) => {
const  c = a + b;
return  c;
};

Ahora se ve claro y ordenado. Además, todos los miembros del equipo pueden mantener el mismo formato automáticamente.


Cómo instalar y usar Prettier paso a paso

Vamos a ver cómo instalar Prettier en un proyecto.

Paso 1: Instalar como dependencia de desarrollo

Como Prettier es algo que usamos durante el desarrollo y no cuando el proyecto está funcionando en el navegador, lo instalamos con la siguiente instrucción:

npm  install  --save-dev  prettier

Esto instala el paquete dentro de la carpeta del proyecto, en una carpeta que se llama node_modules.

Paso 2: Usar Prettier desde la terminal

Podemos pedirle a Prettier que formatee todos los archivos de nuestro proyecto ejecutando:

prettier  --write  .

Pero… si lo hacemos así directamente, puede que aparezca este error:

command  not  found:  prettier

¿Qué está pasando?

El problema es que, al instalar Prettier localmente (es decir, solo dentro del proyecto), su ejecutable no está disponible globalmente para el sistema.

Pero sí está en una ruta especial que crea npm:

node_modules/.bin/prettier

Entonces podríamos escribir:

node_modules/.bin/prettier  --write  .

Funciona, pero es demasiado largo y poco práctico. Aquí es donde entra una herramienta muy útil que se llama npx.


Usar npx para ejecutar herramientas locales

npx es una utilidad que viene incluida desde npm v5.2 en adelante. Sirve para ejecutar paquetes sin necesidad de instalarlos globalmente ni escribir rutas largas.

Con npx, simplemente escribimos:

npx  prettier  --write  .

Y npx se encarga de:

  1. Buscar Prettier dentro del proyecto.
  2. Ejecutarlo usando la versión instalada localmente.
  3. Si no lo encuentra localmente, lo descarga temporalmente y luego lo borra.

Usamos npx con muchas otras herramientas, como:

# Analiza la calidad del código
npx  eslint  .

# Compila y empaqueta el proyecto
npx  webpack

Esto nos ahorra tiempo y mantiene nuestro entorno limpio.

Instalación global vs local: ¿Cuál conviene más?

También podríamos instalar Prettier globalmente:

npm  install  -g  prettier

Esto haría que puedas ejecutar prettier desde cualquier carpeta, pero tiene sus problemas:

ProblemaPor qué es un inconveniente
Cada dev debe instalarla por separadoNo todos tienen lo mismo instalado
Pueden existir versiones diferentesDiferencias en el formato del código o errores inesperados

¿Cuál es la mejor opción entonces?

Siempre que sea posible, instala Prettier como dependencia local del proyecto y ejecútalo con npx. Así todos los que trabajen contigo usarán la misma versión, sin complicaciones.


Resumen

  • Algunas herramientas como Prettier, Babel o Webpack se ejecutan desde la terminal, no desde el código.
  • Si se instalan localmente, los ejecutables no están en el sistema (PATH), por eso no funcionan directamente.
  • Por defecto, npm guarda los ejecutables en node_modules/.bin.
  • Para ejecutar estas herramientas fácilmente, usamos npx, que busca y ejecuta los ejecutables locales.
  • Evita instalar paquetes globalmente para no tener diferencias entre entornos de desarrollo.
  • La forma recomendada es instalar Prettier localmente y usarlo con npx para mantener consistencia en el equipo.

Completado

0 / 11