Configurar o package.json

Concluído

Bem-vindo ao mundo do gerenciamento de projetos node.js com npm e gerenciamento de pacotes. Vamos nos aprofundar no que é essencial sobre o empacotamento e abordar como ele pode sobrecarregar seu processo de desenvolvimento.

Empacotamento e gerenciamento de pacotes

O NPM, o gerenciador de pacotes padrão do Node.js, é sua arma secreta para incorporar código externo em seus projetos. É como ter um assistente pessoal para ajudar você a criar aplicativos com mais rapidez e eficiência.

Empacotar é como encapsular o código para distribuição. Ele agrupa perfeitamente seu código e suas dependências em um pacote que outras pessoas podem instalar e usar facilmente. O gerenciamento de pacotes é a arte de lidar com esses pacotes e envolve:

  • O arquivo package.json, o blueprint do seu projeto. Ele está repleto de metadados sobre seu projeto e cuida do gerenciamento de dependências e arquivos de pacote.
  • A ferramenta npm CLI, seu faz-tudo pessoal para instalar e gerenciar pacotes do registro npm.
  • O registro npm, um tesouro de pacotes públicos prontos para serem usados em seus projetos.

Criar seu package.json

Criar um package.json é tão simples quanto executar o comando npm init. Há duas maneiras principais de fazer isso:

  • npm init: Esse comando é como um guia amigável, guiando você em um processo passo a passo que solicita detalhes sobre seu projeto, como nome, versão e descrição.
  • npm init -y: Este comando é a versão de treinamento expresso do npm init. Ele pula as perguntas e preenche os valores padrão para você.

Aqui está uma prévia do arquivo package.json que você vai gerar.

{
  "name": "my project",
  "version": "1.0.0",
  "description": "",
  "main": "script.js",
  "dependencies": {},
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

Entender as áreas de arquivo package.json

Pense no arquivo package.json como um baú de tesouros, cheio de jóias preciosas que dão brilho ao seu projeto. Essas gemas são as propriedades no arquivo package.json e se enquadram em três categorias principais:

  • Metadados: Essas propriedades são como as jóias da coroa, definindo as meta-informações sobre o seu projeto. Elas incluem o nome do projeto, a descrição, o autor, as palavras-chave e muito mais.
  • Dependências: Estas são as moedas de ouro e prata, representando os pacotes que o seu projeto usa. As propriedades dependencies e devDependencies guardam esses tesouros. À medida que avançamos, você aprenderá a usar essas propriedades para instalar, atualizar e gerenciar suas dependências.
  • Scripts: Esses são os comandos de terminal que fazem as tarefas do projeto acontecerem. Você pode listar scripts para tarefas como iniciar, compilar, testar e lint.

Expedir tarefas com scripts

No arquivo package.json, você deve incluir pelo menos quatro scripts comuns:

  • start: Este script dá vida ao projeto. Por exemplo, ele pode usar o comando node ./src/index.js.
  • build: Este script prepara o seu projeto para a sua grande estreia. Ele pode transformar TypeScript em JavaScript, por exemplo.
  • test: Este script verifica a integridade do projeto, normalmente usando um pacote de teste.
  • lint: Este script arruma o seu código, verificando se há problemas de estilo e formatação usando uma ferramenta como o ESLint.

Estes nomes de script são como palavras mágicas, universalmente reconhecidas na comunidade de desenvolvedores e essenciais para manter o seu projeto organizado.

Padronizar nomes de script

No arquivo package.json, os scripts são definidos com uma ação e um comando:

"scripts" : {
  "<action>" : "<command>"
}

Veja um exemplo:

"scripts" : {
  "start" : "node ./dist/index.js",
  "test": "jest",
  "build": "tsc",
  "lint": "eslint"
}

Executar um script

Para executar um script em um terminal inserindo o comando npm run <action>. Por exemplo, npm run lint.

A ação start e test são especiais, na medida em que você pode omitir a palavra run do comando. Em vez de inserir o comando npm run start, você pode inserir npm start.

Usar um ambiente de desenvolvimento predefinido

Este módulo de treinamento oferece um contêiner de desenvolvimento, em um navegador ou em seu computador local. Este contêiner fornece todo o ambiente necessário para que você possa usar este módulo de treinamento sem precisar instalar um IDE ou Node.js. Você não precisa saber nada sobre o contêiner para concluir este módulo de treinamento.