npkill v0.11.3
Encuentra y destruye directorios node_modules viejos y pesados :sparkles:
Esta herramienta te permite listar cualquier directorio node_modules que haya en tu sistema, además del espacio que ocupa. Entonces puedes seleccionar los que quieras borrar para liberar espacio. ¡Yay!
Table of Contents
- Características
- Instalación
- Uso
- Configuración local
- Roadmap
- Bugs conocidos
- Cómo contribuir
- Invítanos a un café
- Licencia
:heavy_check_mark: Características
Libera espacio: Elimina tus directorios node_modules viejos y polvorientos que le roban espacio a tu máquina.
Último uso del Workspace: Comprueba cuándo ha sido la última vez que has modificado un fichero en el workspace (indicado en la columna last_mod).
Rapidez: NPKILL está escrito en TypeScript, pero las búsquedas se llevan a cabo a bajo nivel, lo que supone una mejora considerable del rendimiento.
Fácil de utilizar: Despídete de comandos largos y difíciles. Utilizar Npkill es tan sencillo como leer la lista de tus node_modules, y pulsar la tecla Del para eliminarlos. ¿Podría ser más fácil? ;)
Minificado: Apenas tiene dependencias.
:cloud: Instalación
¡Lo mejor es que no tienes que instalar Npkill para utilizarlo! Simplemente utiliza el siguiente comando:
$ npx npkill
O, si por alguna razón te apetece instalarlo:
$ npm i -g npkill
# Los usuarios de Unix quizá tengan que ejecutar el comando con sudo. Ve con cuidado
NPKILL no tiene soporte para node<v14. Si esto te afecta puedes utilizar
npkill@0.8.3
:clipboard: Uso
$ npx npkill
# o solo npkill si está instalado de forma global
Por defecto, Npkill comenzará la búsqueda de node_modules comenzando en la ruta donde se ejecute el comando npkill
.
Muévete por los distintos directorios listados con ↓ ↑, y utiliza Space para borrar el directorio seleccionado.
También puedes usar j y k para moverte por los resultados.
Para salir de Npkill, utiliza Q, o si te sientes valiente, Ctrl + c.
¡Importante! Algunas aplicaciones que están instaladas en el sistema necesitan su directorio node_modules para funcionar, y borrarlo puede romperlas. NPKILL te mostrará un :warning: para que sepas que tienes que tener cuidado.
Opciones
ARGUMENTO | DESCRIPCIÓN |
---|---|
-c, --bg-color | Cambia el color de selección de la fila. (Colores disponibles: azul, cyan, magenta, blanco, rojo y amarillo) |
-d, --directory | Permite seleccionar el directorio desde el que comienza la búsqueda. Por defecto, se empieza en . |
-D, --delete-all | ACTUALMENTE DESHABILITADA. Borra automáticamente todos los node_modules que se encuentran |
-e, --hide-errors | Esconde los errores en el caso de que ocurra alguno |
-E, --exclude | Excluye directorios de la búsqueda (la lista de directorios debe estar entre comillas dobles "", cada directorio separado por ',' Ejemplo: "ignore1, ignore2") |
-f, --full | Comienza la búsqueda en el home del usuario (ejemplo: "/home/user" en Linux) |
-gb | Muestra el tamaño en Gigabytes en lugar de en Megabytes. |
-h, --help, ? | Muestra esta página de ayuda y finaliza |
-nu, --no-check-update | No comprobar si hay actualizaciones al iniciar la aplicación |
-s, --sort | Ordena los resultados por: size , path or last-mod |
-t, --target | Especifica el nombre del directorio que se buscará (por defecto es node_modules) |
-x, --exclude-hidden-directories | Excluye directorios ocultos (directorios "dot") de la búsqueda |
-v, --version | Muestra la versión de Npkill |
Precaución: Algunos comandos pueden cambiar en versiones futuras
Ejemplo
- Busca y encuentra los directorios node_modules en un directorio projects :
npkill -d ~/projects
# otra alternativa:
cd ~/projects
npkill
- Lista los directorios llamados "dist" y muestra los errores que ocurran:
npkill --target dist -e
- Muestra el cursor de color magenta... ¡Porque me gusta el magenta!
npkill --color magenta
- Lista los directorios vendor en un directorio projects, ordenados por tamaño y mostrando el tamaño en gb:
npkill -d '~/more projects' -gb --sort size --target vendor
- Lista los node_modules en el directorio projects, excluyendo los que están en los directorios progress e ignore-this:
npkill -d 'projects' --exclude "progress, ignore-this"
- Borra automáticamente todos los node_modules que se encuentren en el directorio backups:
# Deshabilitado por razones de seguridad (puedes utilizar esta opción en la versión 0.2.4 bajo tu propia responsabilidad)
npkill -d ~/backups/ --delete-all
:pager: Configuración local
# -- Primero, clona el repositorio
git clone https://github.com/voidcosmos/npkill.git
# -- Navega al dir
cd npkill
# -- Instala las dependencias
npm install
# -- ¡Y ejecuta!
npm run start
# -- Si quieres ejecutar con algún parámetro, hay que añadir "--", tal y como se muestra a continuación:
npm run start -- -f -e
:crystal_ball: Roadmap
- Lanzar la versión 0.1.0 !
- Mejorar el código
- Mejorar el rendimiento
- ¡Mejorar el rendimiento aún más!
- Ordenar los resultados por tamaño y ruta
- Permitir la búsqueda de otro tipo de directorios (targets)
- Reducir las dependencies para ser un módulo más minimalista
- Permitir el filtrado por directorios que no se hayan utilizado en un periodo de tiempo determinado
- Crear una opción para mostrar los directorios en formato árbol
- Añadir menús
- Añadir un servicio de logs
- Limpieza periódica y automática (?)
:bug: Bugs conocidos :bug:
- A veces, el CLI se bloquea mientras un directorio se está borrando.
- Algunas terminales que no utilizan TTY (como git bash en Windows) no funcionan.
- La ordenación, especialmente por rutas, puede ralentizar la terminal cuando haya muchos resultados al mismo tiempo.
- A veces, los cálculos de tamaño son mayores de lo que deberían ser.
- (RESUELTO) Problemas de rendimiento al hacer la búsqueda desde directorios de alto nivel (como / en Linux).
- (RESUELTO) A veces el texto se colapsa al actualizar el CLI.
- (RESUELTO) Analizar el tamaño de los directorios tarda más de lo que debería.
Si encuentras algún bug, no dudes en abrir un issue :)
:revolving_hearts: Cómo contribuir
Si quieres contribuir, échale un vistazo al CONTRIBUTING.md
:coffee: Invítanos a un café
El día de mañana nos gustaría dedicarnos al open source completamente, pero antes, nos queda un largo camino por recorrer.
Seguiremos contribuyendo al open source por y para siempre, pero las donaciones son una de las muchas formas de apoyarnos.
¡Invítanos a un café! (O a un té para Nya, la única programadora a la que no le gusta el café).
¡¡Mil gracias!!
Muchísimas gracias a todos los que nos han apoyado :heart:
Alternativa cripto
- btc: 1ML2DihUoFTqhoQnrWy4WLxKbVYkUXpMAX
- bch: 1HVpaicQL5jWKkbChgPf6cvkH8nyktVnVk
- eth: 0x7668e86c8bdb52034606db5aa0d2d4d73a0d4259
:scroll: Licencia
MIT © Nya García Gallardo y Juan Torres Gómez
:cat::baby_chick:
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago