viernes, 26 de diciembre de 2025

NPM puede ser un gran aliado en el desarrollo frontend; en esta actualización explico por qué lo uso y cómo lo comparo con Yarn y pnpm

Este es un análisis de por qué mi blog usa NPM y por qué, para este proyecto en concreto, me resulta la opción más práctica.

Qué es la gestión de dependencias

Son las herramientas que facilitan la instalación, actualización y publicación de librerías y utilidades que usamos en un proyecto.

Por qué usaba Bower (historia)

Hace años usaba Bower porque era cómodo para gestionar assets front-end (CSS/JS) sin demasiada complejidad: centralizaba dependencias y generaba un workflow sencillo para copiar recursos al build.

Por qué preferí quedarme únicamente con NPM

Con el tiempo NPM amplió su ecosistema y hoy ofrece la mayoría de paquetes y utilidades que antes manejaba Bower. Además mi blog ya usaba NPM para las dependencias de generación estática, por lo que mantener un solo gestor simplifica el pipeline y evita duplicidad de ficheros/lockfiles.

Por qué automatizar tareas

Automatizar evita trabajo repetitivo y reduce errores humanos. Tareas como optimizar imágenes, compilar SCSS, concatenar/minificar CSS y JS o copiar fuentes al directorio de salida se hacen de forma fiable con scripts.

En mi caso opté por centralizar esos pasos en comandos invocables desde NPM (scripts) en lugar de añadir otra capa de herramientas compleja.

NPM vs Yarn vs pnpm — contexto y decisión

Para este blog en particular prefiero quedarme con NPM por simplicidad y compatibilidad: no necesito las características avanzadas de pnpm, y mantener NPM evita confusiones a colaboradores o a servicios de despliegue que esperan el flujo estándar. En mi uso profesional sí considero Yarn o pnpm cuando el proyecto lo exige (mono-repos, grandes equipos, optimización de CI), pero aquí la elección es deliberada: facilidad de mantenimiento y cero magia extra.

Si decides experimentar con pnpm, prueba primero en un branch y revisa que las dependencias (y cualquier script que manipule paths) sigan comportándose igual.

Por qué NPM es suficiente en este blog

Porque puedo ejecutar todo el build y las tareas auxiliares desde npm run ..., las dependencias necesarias están publicadas en el registro y no necesito un comportamiento de instalación especial. Mantener la herramienta mínima reduce la complejidad y la barrera de entrada para contribuciones ocasionales.


Si quieres, puedo añadir ejemplos de npm run build/npm run dev en el README o en la entrada misma, o crear una versión traducida en inglés para comenzar la traducción.