MB Academy

NPM e Gerenciamento de Pacotes

Aprenda a usar o NPM para instalar, gerenciar e compartilhar pacotes em seus projetos TypeScript.

Antes de começar a usar o NPM, você precisa ter o Node.js instalado no seu computador. O Node.js é o ambiente de execução JavaScript que inclui o NPM por padrão.

Instalando o Node.js

  1. Acesse o site oficial do Node.js: nodejs.org
  2. Baixe a versão LTS (Long Term Support)
  3. Execute o instalador baixado
  4. Siga as instruções do instalador (você pode manter as opções padrão)
  5. Para verificar se a instalação foi bem-sucedida, abra o terminal e digite:
    node --version
    npm --version

Para Ubuntu/Debian, execute no terminal:

sudo apt update
sudo apt install nodejs npm

Verificando a instalação

Independente do sistema operacional, você pode verificar se o Node.js e o NPM foram instalados corretamente executando:

node --version
npm --version

Se tudo estiver correto, você verá as versões do Node.js e do NPM instalados.

Recomendamos sempre usar a versão LTS (Long Term Support) do Node.js, que é mais estável e tem suporte de longo prazo.

Se o Git e o GitHub ajudam você a organizar e compartilhar seus projetos, o NPM é o que permite potencializar seus projetos com ferramentas externas.

O NPM (Node Package Manager) é o gerenciador de pacotes do Node.js. Ele é uma ferramenta que permite:

  • Instalar bibliotecas e ferramentas prontas
  • Gerenciar dependências (softwares que seu projeto precisa para funcionar)
  • Executar scripts de automação (como rodar um servidor local ou testes)
  • Compartilhar pacotes criados por você com o mundo (ou só com seu time)

Na prática, o NPM permite que você use milhares de pacotes desenvolvidos pela comunidade para acelerar seu trabalho e evitar reinventar a roda.

O que são pacotes?

Um pacote no contexto do NPM é basicamente um conjunto de arquivos JavaScript agrupados e distribuídos com um nome e uma versão. Pode ser uma biblioteca, um framework, uma ferramenta de build, um estilo CSS, ou qualquer outro recurso que seu projeto possa usar.

Exemplos populares de pacotes:

  • react - biblioteca para construir interfaces
  • express - framework para criar APIs e servidores
  • axios - cliente HTTP para buscar dados
  • eslint - ferramenta para encontrar erros no código
  • vite, webpack - empacotadores de projetos

Cada pacote está registrado no repositório central do NPM, que você pode explorar aqui:

🔗 https://www.npmjs.com

Como instalar um pacote

Após ter o Node.js instalado, você pode usar o NPM diretamente no terminal. Para instalar um pacote localmente no seu projeto, use:

npm install nome-do-pacote

Por exemplo:

npm install axios

Isso cria uma pasta chamada node_modules (com os arquivos da dependência) e atualiza ou cria o arquivo package.json com a lista de dependências.

O que é o package.json?

O package.json é o coração de um projeto Node.js. Ele contém as informações básicas do projeto:

  • Nome, versão e descrição
  • Lista de dependências
  • Scripts customizados
  • Licença, autor e outras configurações

Você pode criar um package.json do zero com:

npm init

O NPM vai fazer algumas perguntas (nome do projeto, versão, etc.) e gerar o arquivo para você. Se quiser pular as perguntas e aceitar os padrões:

npm init -y

Instalando Dependências

Existem dois tipos de dependências:

  1. dependencies: Pacotes que seu projeto precisa para funcionar em produção (ex: um framework web).
  2. devDependencies: Pacotes usados apenas durante o desenvolvimento (ex: ferramentas de teste, compiladores).

Instalando o TypeScript e o ts-node

Para nossos projetos, vamos precisar de duas ferramentas essenciais como dependências de desenvolvimento:

  • typescript: O compilador do TypeScript.
  • ts-node: Uma ferramenta que permite executar arquivos TypeScript diretamente, sem a etapa manual de compilação.

Instalamos ambos com o seguinte comando:

npm install typescript ts-node --save-dev

O --save-dev (ou -D) informa ao NPM que estes são pacotes para o ambiente de desenvolvimento. Após a instalação, eles aparecerão na seção devDependencies do seu package.json.

Instalando uma dependência de produção

Se seu projeto precisasse de uma biblioteca para funcionar (por exemplo, axios), você a instalaria assim:

npm install axios

Este pacote seria listado em dependencies.

O que é a pasta node_modules?

Quando você instala um pacote, o NPM o baixa (junto com suas próprias dependências) para uma pasta chamada node_modules. Esta pasta geralmente contém muitos arquivos e não deve ser enviada para o Git. Adicione node_modules/ ao seu arquivo .gitignore.

Instalando dependências de um projeto existente

Quando você baixa um projeto de outra pessoa, ele não vem com a pasta node_modules. Para instalar todas as dependências listadas no package.json, basta rodar:

npm install

O NPM lerá os campos dependencies e devDependencies e instalará tudo o que for necessário.

Scripts personalizados

No package.json, você pode definir scripts personalizados para rodar comandos com atalhos simples. Por exemplo:

"scripts": {
  "start": "node index.js",
  "dev": "nodemon index.js"
}

Agora, no terminal, você pode executar:

npm start
npm run dev

Isso é amplamente usado em projetos modernos. Frameworks como React, Vite e Next.js já vêm com scripts como dev, `