npkill
v0.12.2
Published
List any node_modules directories in your system, as well as the space they take up. You can then select which ones you want to erase to free up space.
Downloads
25,318
Readme
Encontre e remova facilemente pastas node_modules antigas e pesadas :sparkles:
Esta ferramenta permite que você liste as pastas node_modules em seu sistema, bem como o espaço que ocupam. Então você pode selecionar quais deles deseja apagar para liberar espaço!
i18n
Estamos fazendo esforço para internacionalizar a documentação do Npkill. Aqui está uma lista das traduções disponíveis:
Table of Contents
- Funcionalidades
- Instalação
- Utilização
- Configurar localmente
- Roteiro
- Problemas conhecidos
- Contribuindo
- Compre-nos um café
- Licença
:heavy_check_mark: Funcionalidades
Liberar espaço: Livre-se dos antigos e empoeirados node_modules que ocupam espaço em sua máquina.
Último Uso do Espaço de Trabalho: Verifique quando foi a última vez que você modificou um arquivo no espaço de trabalho (indicado na coluna última_modificação).
Muito rápido: O NPKILL é escrito em TypeScript, mas as pesquisas são realizadas em um nível baixo, melhorando muito o desempenho.
Fácil de usar: Diga adeus aos comandos longos. Usar o npkill é tão simples quanto ler uma lista de seus node_modules e pressionar Delete para se livrar deles. Pode ser mais fácil do que isso? ;)
Minificado: Ele mal possui dependências.
:cloud: Instalação
Você nem precisa instalá-lo para usar! Basta usar o seguinte comando:
$ npx npkill
Ou, se por algum motivo você realmente deseja instalá-lo:
$ npm i -g npkill
# Usuários do Unix podem precisar executar o comando com sudo. Tome cuidado.
O NPKILL não suporta versões node<v14. Se isso afeta você, use [email protected].
:clipboard: Utilização
$ npx npkill
# ou apenas npkill se você instalou globalmente
Por padrão, o npkill fará a varredura em busca de node_modules a partir do local onde o comando npkill é executado.
Para mover entre as pastas listadas, utilize as teclas ↓ e ↑, e use Space ou Del para excluir a pasta selecionada. Você também pode usar j e k para se mover entre os resultados.
Para abrir o diretório onde o resultado selecionado está localizado, pressione o.
Para sair, use Q ou Ctrl + c se você estiver se sentindo corajoso.
Importante! Algumas aplicações instaladas no sistema precisam do diretório node_modules delas para funcionar, e excluí-los pode quebrá-las. O NPKILL irá destacá-los exibindo um :warning: para que você tenha cuidado.
Opções
| Comando | Descrição |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| -c, --bg-color | Troca a cor de destaque da linha. (Disponível: blue, cyan, magenta, white, red e yellow) |
| -d, --directory | Defina o diretório a partir do qual iniciar a pesquisa. Por padrão, o ponto de partida é a raiz is . |
| -D, --delete-all | Exclui automaticamente todos os node_modules encontrados. Recomendado para usar junto com -x
|
| -e, --hide-errors | Oculta erros |
| -E, --exclude | Excluir diretórios da pesquisa (a lista de diretórios deve estar entre aspas duplas "", com cada diretório separado por vírgula ','). Exemplo: "ignorar1, ignorar2" |
| -f, --full | Iniciar a pesquisa a partir do diretório pessoal do usuário (exemplo: "/home/user" no Linux) |
| -gb | Mostra as pastas em Gigabytes ao invés de Megabytes. |
| -h, --help, ? | Mostrar a página de ajuda e sair |
| -nu, --no-check-update | Não verificar atualizações na inicialização |
| -s, --sort | Ordenar resultados por: size
(tamanho), path
(localização) ou last-mod
(última modificação) |
| -t, --target | Especifique o nome dos diretórios que deseja pesquisar (por padrão, é node_modules) |
| -x, --exclude-hidden-directories | Excluir diretórios ocultos ("diretórios com ponto") da pesquisa. |
| --dry-run | Não exclui nada (irá simular com um atraso aleatório). |
| -v, --version | Mostrar versão do npkill |
Aviso: No futuro alguns comandos podem mudar
Examples
- Busque pastas node_modules no seu diretório de projetos:
npkill -d ~/projetos
# alternativa:
cd ~/projetos
npkill
- Listar diretórios com o nome "dist" e mostrar erros, se houver algum:
npkill --target dist -e
- Exibe o cursor na cor magenta... porque eu gosto de magenta!
npkill --color magenta
- Listar pastas vendor no seu diretório de projetos, ordenar por tamanho e mostrar o tamanho em GB:
npkill -d '~/more projetos' -gb --sort size --target vendor
- Listar node_modules no seu diretório de projetos, exceto nas pastas progresso e ignorar:
npkill -d 'projetos' --exclude "progresso, ignorar"
- Exclua automaticamente todos os node_modules que tenham entrado em seus backups:
npkill -d ~/backups/ --delete-all
:pager: Configurar localmente
# -- Primeiramente, clone o repositório
git clone https://github.com/voidcosmos/npkill.git
# -- Acesse a pasta
cd npkill
# -- Instale as dependências
npm install
# -- E rode!
npm run start
# -- Se você deseja executá-lo com algum parâmetro, você terá que adicionar "--" como no seguinte exemplo:
npm run start -- -f -e
:crystal_ball: Roteiro
- [x] Lançamento 0.1.0 !
- [x] Melhorias de código
- [x] Melhorias de performance
- [ ] Ainda mais melhorias de performance!
- [x] Ordenação de resultados por tamanho e localização
- [x] Permitir a pesquisa por outros tipos de diretórios (alvo)
- [ ] Reduzir as dependências para tornar o módulo mais minimalista
- [ ] Permitir filtrar por diretórios que não foram usados em um período de tempo
- [ ] Criar opção para mostrar as pastas em formato de árvore
- [x] Adicionar menus
- [x] Adicionar logs
- [ ] Limpeza automatizada periódica (?)
:bug: Problemas conhecidos :bug:
- Às vezes, a CLI fica bloqueada enquanto a pasta está sendo excluída.
- Alguns terminais que não utilizam TTY (como o git bash no Windows) não funcionam.
- A ordenação, especialmente por rotas, pode deixar o terminal mais lento quando há muitos resultados ao mesmo tempo.
- Às vezes, os cálculos de tamanho são maiores do que deveriam ser.
- (RESOLVIDO) Problemas de desempenho ao pesquisar em diretórios de alto nível (como / no Linux).
- (RESOLVIDO) Às vezes, o texto se desfaz ao atualizar a interface de linha de comando (CLI).
- (RESOLVIDO) A análise do tamanho dos diretórios leva mais tempo do que deveria.
Se você encontrar algum erro, não hesite em abrir uma solicitação (via issue) :)
:revolving_hearts: Contribuindo
Se você quer contribuir confira o CONTRIBUTING.md
:coffee: Compre-nos um café
Continuaremos a fazer as coisas de qualquer maneira, mas as doações são uma das muitas formas de apoiar o que fazemos.
Obrigado!!
Um enorme agradecimento aos nossos apoiadores :heart:
via Crypto
- btc: 1ML2DihUoFTqhoQnrWy4WLxKbVYkUXpMAX
- bch: 1HVpaicQL5jWKkbChgPf6cvkH8nyktVnVk
- eth: 0x7668e86c8bdb52034606db5aa0d2d4d73a0d4259
:scroll: Licença
MIT © Nya García Gallardo e Juan Torres Gómez
:cat::baby_chick: