Adicionar pacotes ao projeto do Node.js
O Node.js tem pacotes internos para tarefas como gerenciamento de arquivos e manipulação de HTTP. Mas há também uma grande variedade de pacotes de terceiros oferecidos no registro npm.
Quando e como selecionar um pacote npm
Como um novo desenvolvedor da Tailwind Traders, você precisa adicionar funcionalidade a um projeto. Você pode escrever o código, mas decide usar um pacote já existente. Essa decisão de desenvolvimento é um cenário comum.
Quando você deve usar um pacote existente? Estes são alguns fatores a serem considerados:
- Qualidade: Para tarefas como segurança, o uso de pacotes bem estabelecidos garante que você esteja seguindo as melhores práticas e tratando casos de borda.
- Eficiência: Escrever seu próprio código leva tempo. O uso de pacotes existentes pode lhe poupar esforços significativos.
- Manutenção: As bibliotecas precisam de atualizações e correções de bugs. Geralmente, é mais eficiente permitir que uma equipe de código aberto lide com isso.
Os desenvolvedores podem encontrar e baixar pacotes de várias fontes, como:
- Registros: Os registros são coleções de pacotes, como o registro npm. Você também pode hospedar seu próprio registro.
- Repositórios: Você pode instalar pacotes diretamente de uma URL do GitHub.
- Arquivos: Os pacotes podem ser instalados a partir de uma pasta local ou arquivo compactado, útil para testar seus próprios pacotes.
- Diretórios: Você também pode instalar diretamente de um diretório.
Depois de selecionar um pacote, verifique suas dependências para considerar os seguintes fatores:
- Tamanho: Mais dependências significam um volume maior. O tamanho do volume será importante se você tiver limitações de largura de banda ou hardware. Lembre-se de que a instalação de um pacote também instala suas dependências. Isso pode resultar em uma pasta de node_modules grande.
- Popularidade: A popularidade de um pacote pode indicar sua qualidade.
- Licenciamento: Se você planeja vender seu software, verifique se todas as licenças de pacotes de dependência permitem a reutilização e a revenda.
- Manutenção ativa: Evite dependências preteridas ou raramente atualizadas.
Para saber mais sobre um pacote, visite a página do pacote no NPM e seu repositório GitHub. Você também pode usar o comando npm: npm view <package name>
.
Como instalar um pacote
Para instalar um pacote, use a CLI do npm instalada com Node.js. Você pode adicionar um pacote ao seu projeto do Node.js com o comando npm install
no terminal.
npm install <name of package>
Quando você executa o comando install
, a ferramenta de linha de comando se conecta a um registro global, busca o código e o coloca em uma pasta node_modules
na raiz do seu projeto.
Algumas opções comuns para o comando de instalação incluem:
- Para pacotes somente de desenvolvimento, use
--save-dev
. Essa opção é salva na propriedadedevDependencies
depackage.json
. Essas dependências geralmente são ferramentas de formatação, lint, build, transpilação e teste. - Para pacotes somente de produção, use
--production
. Essa opção exclui pacotes somente de desenvolvimento. - Para ferramentas disponíveis globalmente, use
-g
. As ferramentas de linha de comando geralmente são instaladas globalmente em vez de importadas para projetos. As dependências globais são instaladas em um diretório de todo o sistema, não no nível de projetonode_modules
. No entanto, os pacotes globais podem atrapalhar seu sistema. O comandonpx
resolve isso instalando temporariamente pacotes. Usenpx <name>
para buscar um pacote, executá-lo e removê-lo.
Após a instalação, o diretório do projeto se parecerá com o exemplo a seguir:
package.json
node_modules/
<name of dependency>/
<files included in the dependency>
src
index.js
Comandos da CLI do npm
A ferramenta de linha de comando npm tem alguns comandos para ajudar você com tarefas como instalar pacotes, criar pacotes e inicializar projetos Node.js.
Os comandos do NPM são divididos em categorias:
- Gerenciar dependências: Comandos para instalar, atualizar e remover pacotes.
- Executar scripts: Comandos para gerenciar fluxos de desenvolvimento, como teste e compilação de código.
- Configurar o ambiente: Comandos para configurar caminhos de instalação e fontes de pacote.
- Criar e publicar pacotes: Comandos para criar e publicar pacotes.
Para ver uma lista detalhada com todos os comandos, insira o seguinte comando no terminal:
npm --help
Verificar a instalação
Para ver o que está em sua pasta package.json
, use npm list
. O comando npm list
lista todos os pacotes que foram instalados no diretório node_modules
. Cada pacote instalado instalou todas as suas próprias dependências.
Como o comando list
pode resultar em uma lista longa, dificultando a compreensão, você pode listar os pacotes em diferentes níveis com o comando list. Na profundidade 0
, o comando lista o mesmo conteúdo que você tem na seção dependencies
de seu package.json.
npm list --depth=<depth>
Se você instalou o pacote Jest, npm list --depth=0
produzirá uma saída semelhante a esta:
├── jest@26.0.1
Limpar dependências
Remova o pacote que não for mais necessário. A remoção de uma dependência mantém seu projeto limpo e economiza espaço. Essa limpeza é especialmente importante para SPAs (Aplicativos de Página Única), como Angular, React ou Vue. Esses aplicativos agrupam e compactam o código em um arquivo servido ao navegador. Quanto maior o arquivo, mais tempo leva para carregar, o que pode deter os usuários.
Há duas maneiras de limpar as dependências que se tornam desnecessárias:
- Desinstalar: para desinstalar um pacote, execute o
npm uninstall <name of dependency>
. Esse comando remove o pacote do arquivo de manifestopackage.json
e da pasta node_modules. - Remover: Use
npm prune
para remover todas as dependências não listadas denode_modules
. A remoção é útil quando você quer remover várias dependências sem executar a desinstalação para cada uma. Para remover:- Exclua as entradas de dependências ou devDependencies em
package.json
. run npm prune
.
- Exclua as entradas de dependências ou devDependencies em