MB Academy

Entendendo o package.json

Aprenda como o arquivo package.json funciona e como ele é essencial para gerenciar seus projetos TypeScript.

O arquivo package.json é a peça central de qualquer projeto Node.js. Ele funciona como um documento de identidade para o seu projeto, contendo metadados e, o mais importante, gerenciando as dependências e os scripts.

Estrutura Essencial

Um package.json gerado com npm init -y terá esta aparência:

{
  "name": "meu-projeto",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

Os campos mais importantes para nós agora são:

  • "name", "version", "description": Metadados do projeto.
  • "main": O ponto de entrada do seu projeto (geralmente dist/index.js após a compilação).
  • "dependencies": Pacotes necessários para rodar o projeto.
  • "devDependencies": Pacotes usados apenas para o desenvolvimento (como typescript e ts-node).
  • "scripts": Comandos personalizados para automatizar tarefas.

Scripts para Projetos TypeScript

Uma das funcionalidades mais poderosas do package.json é a seção "scripts". Ela permite criar atalhos para comandos do terminal. Para um projeto TypeScript, alguns scripts são essenciais.

Vamos editar nosso package.json para adicionar scripts úteis:

{
  ...
  "main": "dist/index.js", // Aponta para o arquivo compilado
  "scripts": {
    "start": "ts-node src/index.ts",
    "dev": "nodemon --exec ts-node src/index.ts",
    "build": "tsc",
  },
  ...
}

Vamos entender cada script:

  • "start": "ts-node src/index.ts"

    • Executa seu arquivo principal (src/index.ts) diretamente usando ts-node.
    • Como rodar: npm start
  • "dev": "nodemon --exec ts-node src/index.ts"

    • Usa o nodemon (uma ferramenta que precisa ser instalada com npm install -D nodemon) para reiniciar o servidor automaticamente sempre que um arquivo é alterado. Ideal para o desenvolvimento.
    • Como rodar: npm run dev
  • "build": "tsc"

    • Executa o compilador do TypeScript (tsc). Ele lê seu arquivo tsconfig.json, compila todos os arquivos .ts para JavaScript e os coloca no diretório de saída (geralmente dist).
    • Como rodar: npm run build

Com esses scripts, seu fluxo de trabalho se torna muito mais profissional e automatizado. Você não precisa mais lembrar de comandos longos; basta usar os atalhos do NPM.

Isso é amplamente usado em projetos com Vite, React, Next.js, e qualquer outro framework moderno. Os scripts geralmente incluem tarefas como:

  • Iniciar o servidor (dev, start)
  • Criar uma versão de produção (build)
  • Rodar testes (test)
  • Verificar o estilo do código (lint)
  • Executar scripts de migração, deploy e muito mais

Instalando dependências de um projeto existente

Quando você clona ou baixa um projeto que já tem um package.json, você não precisa instalar cada pacote manualmente. Basta rodar:

npm install

Esse comando lê o package.json e instala tudo automaticamente na pasta node_modules.


O package.json é muito mais que um simples arquivo de configuração. Ele é a identidade técnica do seu projeto, o centro de automação e gerenciamento de pacotes, e uma peça-chave para qualquer aplicação moderna com Node.js.

A partir de agora, você vai usá-lo com frequência — seja para instalar bibliotecas, rodar scripts ou organizar o seu fluxo de trabalho como desenvolvedor.