Construindo uma ferramenta CLI com TypeScript

Criar uma ferramenta de Interface de Linha de Comando (CLI) com TypeScript fornece segurança de tipo e recursos modernos de JavaScript. TypeScript aprimora a experiência de desenvolvimento ao oferecer tipagem estática e melhor suporte a ferramentas. Este guia abrange as etapas para construir uma ferramenta CLI usando TypeScript.

Etapa 1: configure seu projeto TypeScript

Comece configurando um novo projeto TypeScript. Inicialize um novo projeto npm e instale o TypeScript e outras dependências.

npm init -y
npm install typescript ts-node @types/node --save-dev
npx tsc --init

O pacote ts-node permite executar arquivos TypeScript diretamente, enquanto @types/node fornece definições de tipo para Node.js.

Etapa 2: Crie um script CLI básico

Crie um arquivo TypeScript que servirá como ponto de entrada para a ferramenta CLI. Esse arquivo manipulará os argumentos da linha de comando e implementará a funcionalidade principal.

import { Command } from 'commander';

const program = new Command();

program
  .version('1.0.0')
  .description('A simple CLI tool')
  .option('-n, --name <name>', 'Specify the name')
  .action((options) => {
    console.log(`Hello, ${options.name || 'World'}!`);
  });

program.parse(process.argv);

Aqui, o pacote commander é usado para manipular argumentos de linha de comando e fornecer uma interface simples para definir comandos e opções.

Etapa 3: Adicionar dependências CLI

Instale dependências adicionais necessárias para construir a ferramenta CLI. Para este exemplo, commander é usado para análise de argumentos.

npm install commander

Etapa 4: Compilar código TypeScript

Compile o código TypeScript em JavaScript. Esta etapa é necessária para distribuir a ferramenta CLI.

npx tsc

Etapa 5: Crie um script executável

Atualize o arquivo package.json para incluir uma seção bin. Esta seção mapeia o comando CLI para o arquivo JavaScript compilado.

{
  "name": "my-cli-tool",
  "version": "1.0.0",
  "bin": {
    "my-cli-tool": "./dist/index.js"
  },
  "scripts": {
    "build": "tsc",
    "start": "ts-node src/index.ts"
  },
  "dependencies": {
    "commander": "^8.3.0"
  },
  "devDependencies": {
    "@types/node": "^14.14.31",
    "typescript": "^4.3.5",
    "ts-node": "^10.2.1"
  }
}

Etapa 6: Teste sua ferramenta CLI

Vincule a ferramenta CLI localmente para testá-la antes de publicar. Use npm link para criar um symlink no diretório global node_modules.

npm link
my-cli-tool --name TypeScript

Conclusão

Construir uma ferramenta CLI com TypeScript envolve configurar um projeto TypeScript, criar um script CLI básico, adicionar dependências e compilar o código. Ao aproveitar a tipagem estática e os recursos modernos do TypeScript, é possível criar ferramentas CLI robustas e sustentáveis.