Desenvolvimento Node

O que é NPM e como usar uma biblioteca instalada por ele

Saiba o que é o NPM (Node Package Manager), como utilizar um pacote, framework ou biblioteca instalada por ele e sobre o package.json.

há 2 anos 11 meses

Formação Desenvolvedor Node Full-Stack
Conheça a formação em detalhes

O que é NPM?

O NPM (node package manager) é o gerenciador de pacotes do node.js (runtime de javascript que permite utilizar a linguagem no back-end).

Em primeiro lugar, com o NPM você pode gerenciar dependências do seu projeto, acessar o repositório do NPM e ter acesso a inúmeras bibliotecas e frameworks JavaScript, permite a instalação/desinstalação dos mesmos assim como a criação de seus próprios módulos públicos ou privados.

Outro ponto importante do NPM é sobre o gerenciamento das versões das dependências de nossos projetos. Por exemplo, se em um projeto você está utilizando jQuery e o Bootstrap, antes era necessário baixar e atualizar manualmente cada biblioteca.

Sobretudo, o NPM cria o arquivo package.json, um arquivo que salva essas dependências e que, com um comando, mantém nossas bibliotecas atualizadas e, em novas instalações de nosso projeto por outros desenvolvedores, logo, com um comando elas serão baixadas e incorporadas sem a necessidade de todo o trabalho manual.

Node.js - Fundamentos
Curso Node.js - Fundamentos
Conhecer o curso

Como instalar o NPM - Node.js

Primeiramente, o NPM está incluso junto ao node.js, para instalar basta seguir os seguintes passos:

  • Acessar o site oficial do node.js - https://nodejs.org
  • Conforme a imagem abaixo, o site já reconheceu o sistema operacional (Windows, neste caso) e sugeriu o download de duas versões, LTS e Current. Priorize o download das versões LTS, que são as versões mais estáveis com maior suporte.

home do nodejs.org

  • No linux, você pode instalar pelo gerenciador de pacotes wget, basta abrir o terminal e executar:
 wget -qO- https://deb.nodesource.com/setup_4.x | sudo bash -
  • Logo em seguida:
sudo apt-get install --yes nodejs
  • Para o macOS, você pode baixar o “macOS installer”. O instalador é um arquivo .pkg que você pode executar do Finder. Ao final da instalação ele irá informar sobre os dois binários instalados (node e npm).

instalação npm versão macOS

Após a instalação do Node.js, você pode verificar tanto a versão do Node.js quanto a versão do NPM que foram instaladas executando os seguintes comandos: node -v e npm -v.

comandos para saber a versão

De antemão, o NPM também é um pacote Node.js, ou seja, podemos atualizar a versão do NPM utilizando ele mesmo executando o comando: npm install npm@latest -g.

Como instalar um pacote no NPM

Agora para instalar um pacote no seu projeto utilizando o NPM é muito simples. Basta executar o seguinte comando no terminal (dentro do diretório do seu projeto): npm install [nome do pacote].

Por exemplo, eu criei o diretório npm na minha área de trabalho e instalei o pacote html-pdf (pacote este que nos auxilia a criar um conversor de html para pdf) executando o comando: npm install html-pdf.

A estrutura de arquivos ficou da seguinte forma:

Estrutura do projeto

Como resultado, o NPM criou a pasta node_modules dentro da nossa pasta NPM, e dentro de node_modules temos uma pasta relacionada ao pacote html-pdf.

Também existe a opção de instalar um pacote global, ou seja, é possível acessar o pacote de qualquer diretório. Logo, basta instalar um pacote da seguinte maneira: npm install -g [pacote].

Afinal, é interessante instalar globalmente pacotes que sejam utilizados com frequência, assim você pode apenas executar os comandos necessários no terminal independente de qual diretório esteja. Como o pacote http-server, para subir servidores e testar suas aplicações.

JavaScript - Fundamentos
Curso JavaScript - Fundamentos
Conhecer o curso

Como usar um pacote do NPM

Para utilizar o pacote em nosso projeto, é necessário importar o pacote no arquivo .js onde vamos trabalhar com o mesmo, adicionando uma linha de código seguindo a seguinte estrutura:

import * as pdf from 'html-pdf'; //import no padrão do ECMAScript2015
//outros imports

//código da aplicação

Desta forma a aplicação estará apta a utilizar o pacote externo instalado pelo NPM.

Você pode buscar por pacotes no próprio site do npm, acessando o https://npmjs.com/.

Arquivo package.json

Ao instalar pacotes em nossas aplicações eles devem ficar listados de alguma forma, para que outros desenvolvedores consigam efetuar novas instalações e/ou possam fazer novas alterações/atualizações. Para isso existe o arquivo package.json

Para criar o arquivo package.json é necessário utilizar o seguinte comando dentro do diretório da sua aplicação: npm init.

Agora, ao executar este comando, surgirá uma série de perguntas referentes à sua aplicação, como a imagem abaixo:

Criaçãod do arquivo package.json

Você deve responder as questões e confirmar se tudo está ok, logo em seguida o arquivo package.json será criado. Com isso, teremos algo similar ao código:

{
  "name": "pdfgenerator", //nome da aplicação
  "version": "1.0.0", //versão
  "description": "", //descrição
  "main": "app.js", //arquivo principal
  "type":"module", //padrão de importação dos modulos -> CommonJS ou ES6 (ECMAScript2015)
  "dependencies": { //pacotes que a aplicação irá utilizar e a versão do pacote
    "html-pdf": "^2.2.0"
  },
  "devDependencies": {}, //pacotes que são utilizadas somente
												//no ambiente de desenvolvimento
  
"scripts": {          //scripts para automatizar comandos
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "", //Autor
  "license": "ISC" //tipo de licença
}

Desenvolvedor JavaScript
Formação Desenvolvedor JavaScript
Conhecer a formação

Desta forma eliminamos a necessidade de instalar cada pacote manualmente, sendo possível configurar a aplicação em novos ambientes de maneira prática e rápida.

Conclusão

Por fim, o NPM conta com um vasto repositório de pacotes, frameworks e bibliotecas JavaScript, permite a instalação e gerenciamento de pacotes internos e externos, também existem outras funções que você pode conferir nos artigos: “Node Package Manager - O que você pode fazer com ele?”, NPM – Você sabe o que dá para fazer com ele? e 10 Truques do NPM – Você conhece todos?

Enfim, se você for desenvolver utilizando node.js é, definitivamente, fundamental conhecer o NPM. Tanto que temos um curso específico de NPM, aproveite :)

Npm - Gerenciador de pacotes para JavaScript
Curso Npm - Gerenciador de pacotes para JavaScript
Conhecer o curso

Por fim, caso queira aprender mais sobre Node.js saiba que aqui na TreinaWeb temos o curso Node.js Fundamentos que possui 01h52 de vídeos e um total de 26 exercícios. Conheça também nossos outros cursos de Node.js.

Veja quais são os tópicos abordados durante o curso de Node.js - Fundamentos:

  • Módulos e os padrões CommonJS/ECMAScript 2015;
  • Manipulação de arquivos;
  • Trabalhar com HTTP;
  • Instalação de pacotes com o NPM;
  • Eventos assíncronos e promises;
  • Introdução ao TypeScript.

Autor(a) do artigo

Wesley Gado
Wesley Gado

Formado em Análise e Desenvolvimento de Sistemas pelo Instituto Federal de São Paulo, atuou em projetos como desenvolvedor Front-End. Nas horas vagas grava Podcast e arrisca uns três acordes no violão.

Todos os artigos

Artigos relacionados Ver todos