beta

node_modules que quase não ocupa disco.

Cada pacote fica guardado uma vez só no seu computador: dez projetos usando o mesmo React ocupam o espaço de um.

$npm install -g brixel

Node 22+

quem já usa
Universidade Federal do Recôncavo da Bahia movuu Liga Colaborativa dos Povos Sellit
experimente

Instale três projetos. Veja o disco quase não crescer.

Cada quadradinho é um pedaço do que está guardado no seu computador. Azul é arquivo novo. Claro é arquivo que já estava lá.

Instala o projeto. Só baixa o que ainda não está guardado na sua máquina.

terminal~/dev
escolha um projeto abaixo
o que está guardadonada ainda
vazio arquivo novo já existia guardado
ocupado no disco
0 MB
o npm ocuparia
0 MB
economia
libere espaço no teu pc
o quanto encolhe

Cinco projetos parecidos, a mesma máquina

npm 2300 MB
brixel 478 MB
−79%
1,8 GB de volta
−63%
um projeto sozinho · 460 → 171 MB
−35%
quatro projetos diferentes · 1725 → 1106 MB
0 byte
a cada projeto que repete um pacote
como funciona

Quatro passos

Nada é reescrito no caminho, teu arquivo que chega no seu projeto é igualzinho ao que o npm publicou.

┌──────────────────────┐      ┌──────────────────────┐      ┌──────────────────────┐      ╔══════════════════════╗
│    1. LÊ A LISTA     │ ──▶  │       2. BAIXA       │ ──▶  │    3. IDENTIFICA     │ ──▶  ║4. GUARDA NUM LUGAR SÓ║
└──────────────────────┘      └──────────────────────┘      └──────────────────────┘      ╚══════════════════════╝

descobre de quais             baixa só o que ainda          dá uma impressão              uma pasta na sua
pacotes o projeto             não tem e confere se          digital pra cada              máquina, usada por
precisa                       veio inteiro                  arquivo: dois iguais          todos os projetos
                                                            têm a mesma digital

                                                                                                      │
                   ┌─────────────────────────────────────┬─────────────────────────────────────┬──────┘
                   ▼                                     ▼                                     ▼
               projeto A                             projeto B                             projeto C
             node_modules                          node_modules                          node_modules
               ocupa ~0                              ocupa ~0                              ocupa ~0
o que você ganha

Três coisas, hoje

Espaço de volta

Cinco projetos parecidos saíram de 2300 MB para 478 MB. O React que todos eles usam ocupa o espaço de um.

node_modules em 4 segundos

Trocou de branch, clonou de novo, apagou a pasta: volta na hora, sem baixar nada da internet.

Seu fluxo, do mesmo jeito

Mesmo package.json, mesmo lockfile, mesma pasta. Muda só onde os arquivos ficam guardados.

números reais

Medido em quatro projetos de verdade

SituaçãonpmbrixelΔ
1 projeto, sem nada pra repetir460 MB171 MB−63%
5 projetos que usam os mesmos pacotes2300 MB478 MB−79%
4 projetos bem diferentes entre si1725 MB1106 MB−35%
Tempo pra instalar mais um projeto5,7 s4,4 s
Tempo pra remontar 22 mil arquivos4,1 s