Se você ainda usa lodash — reduza o bundle em 97% com uma linha no package.json (es-toolkit)
(toss.tech)Este é um artigo que organiza o processo até a biblioteca de utilitários JavaScript es-toolkit, criada pela equipe de frontend da Toss como substituta do lodash, ultrapassar 10 milhões de downloads semanais no npm.
- Começou em 2024 com a pergunta: "Já houve alguma biblioteca JS criada na Coreia e usada globalmente?"
- Desde que o lodash foi projetado há 10 anos, o ambiente mudou muito com ES Modules, tree shaking, otimizações do motor V8 e TypeScript, mas a estrutura permaneceu a mesma; eles viram nisso uma oportunidade e redesenharam tudo do zero
- Em comparação com o lodash, redução de até 97% no tamanho do bundle, melhora de 2 a 3 vezes no desempenho em runtime e 100% de cobertura de testes
- Exemplo: com 5 funções — groupBy, keyBy, pick, omit, debounce — o lodash-es fica em ~30KB, enquanto o es-toolkit fica em ~1KB
- Com
es-toolkit/compat, é possível fazer uma substituição drop-in com 100% de compatibilidade com lodash. Basta trocar uma única linha nopackage.json, de"lodash": "npm:es-toolkit@^1.44.0", para migrar sem alterar o código - Microsoft, Yarn, Storybook, IBM, Recharts e Ink adotaram voluntariamente a biblioteca. Recentemente, o Dify também iniciou a migração a partir do lodash
- Crescimento constante sem um momento viral: 100K → 500K → 1M → 5M → 10M
- O comitê de open source da Toss também desenvolve outras bibliotecas, como overlay-kit, use-funnel e suspensive
2 comentários
Hmm..
Normalmente eu usaria
lodash-es, mas se é nacional e a compatibilidade é 100%, parece valer a pena testar uma vez.Mas faz tanto tempo que não uso
lodashhoje em dia...