Muchas veces nos encontramos en el escenario donde, no solo mi disco duro se ha llenado “automáticamente” (de la nada) sino también con repositorios que “accidentalmente” se ha hecho commit de la famosa carpeta node_modules y es que no estoy solo en esto.
Si has desarrollado aplicaciones utilizando algún framework de JavaScript (ej. React, Angular, VUE, etc.) seguramente has importado un montón de librerías usando NPM o YARN (gestores de paquetes) que te ayudan en el proceso de crear aplicaciones, pero eso también quiere decir que te has encontrado en múltiples ocasiones teniendo que eliminar la carpeta “node_modules” para mantener con espacio disponible tu disco duro.
A continuación les mostraré algunos comandos para MAC, Linux y Windows que les hará la vida más fácil al momento de hacer limpieza de los paquetes instalados en tus proyectos, ya sea para liberar espacio como para realizar respaldo de tus proyectos en otro medio sin todo ese peso.
Cómo eliminar la carpeta node_modules
Primero, normalmente usamos el siguiente comando para eliminar node_modules estando dentro de la carpeta del proyecto:
rm -rf node_modules
Y esto funciona de maravilla, pero qué pasa cuando tenemos múltiples proyectos y todos bajo distintas estructuras de carpetas? se vuelve tedioso (y peligroso) hacer un borrado recursivo en la carpeta donde tienes todos tus proyectos.
Listando todas las carpetas node_modules
Primer paso es encontrar y listar todas las carpetas node_modules que tengamos en una carpeta, en mi caso todos los proyectos los tengo ordenados dentro de la carpeta PROJECTS separados por las tecnologías (ej. VUE, REACT, BLOCKCHAIN, GOLANG, etc.) entonces para encontrar todas las carpetas que contenga un node_modules dentro utilizo el siguiente comando:
MAC/LINUX
$ cd PROJECTS
$ find . -name "node_modules" -type d -prune | xargs du -chs
--- Example output ---
615M ./~/PROYECTO/node_modules
478M ./REACT/PROYECTO/node_modules
618M ./REACT/material-kit-react-main/node_modules
1,7G total
WINDOWS
cd PROJECTS
FOR /d /r . %d in (node_modules) DO @IF EXIST "%d" echo %d"
Con esto tendremos una idea de cuantos proyectos tenemos instalados y de cuanto espacio en disco están utilizando las carpetas node_modules en nuestro computador.
¿Estás cansado de tener tu disco duro lleno debido a la acumulación de archivos node_modules en tus proyectos? Afortunadamente, hay una manera fácil de limpiar estos archivos y liberar espacio en tu computadora.
Paso 1: Abre tu terminal y navega hasta la raíz de tu directorio de proyectos.
Paso 2: Ejecuta el siguiente comando:
Copy code
find . -name "node_modules" -type d -prune -exec rm -rf '{}' +
Este comando buscará todos los directorios llamados “node_modules” en tu directorio actual y los eliminará.
Paso 3: Para asegurarte de que no se eliminen accidentalmente otros archivos importantes, revisa el directorio antes de ejecutar el comando.
Paso 4: Una vez que hayas eliminado todos los archivos node_modules, puedes verificar el tamaño de tu unidad de almacenamiento para confirmar que se ha liberado espacio.
Consejo adicional: Si no deseas volver a descargar los módulos de node en tus proyectos, es recomendable guardar una copia de estos en un servidor o en una nube de almacenamiento, para que puedas volver a descargarlos si es necesario.
Recuerda siempre tener una copia de seguridad de tus proyectos antes de eliminar cualquier archivo importante.
Una vez que hayas liberado espacio en tu unidad de almacenamiento eliminando los archivos node_modules, es importante considerar cómo puedes mejorar la gestión de estos paquetes en tus proyectos. Aquí hay algunas sugerencias:
- Utiliza un gestor de paquetes: Herramientas como npm o yarn te permiten administrar los paquetes en tus proyectos de manera más eficiente. Puedes utilizar comandos como npm install o yarn add para instalar paquetes, y luego utilizar npm update o yarn upgrade para actualizarlos.
- Utiliza un archivo package-lock.json o yarn.lock: Estos archivos ayudan a asegurar que las versiones de los paquetes en tu proyecto se mantengan estables, evitando que se actualicen automáticamente a la última versión.
- Utiliza un archivo .gitignore: Asegúrate de incluir node_modules en tu archivo .gitignore para evitar subir estos archivos a tu repositorio de Git. Esto ayudará a reducir el tamaño de tu repositorio y asegurará que cada desarrollador en tu equipo tenga que descargar sus propios paquetes.
- Utiliza una herramienta de limpieza de paquetes: Puedes utilizar herramientas como npm-check o yarn-check para verificar los paquetes que no se están utilizando en tu proyecto y eliminarlos.
- Utiliza una herramienta de análisis de dependencias: Herramientas como npm-outdated o yarn-outdated te permiten verificar qué paquetes en tu proyecto están desactualizados y necesitan ser actualizados.
Siguiendo estos consejos ayudará a mejorar la gestión de tus paquetes en node_modules y asegurará que tu proyecto sea más estable y escalable.