Créer un outil CLI avec TypeScript

La création d'un outil d'interface de ligne de commande (CLI) avec TypeScript offre une sécurité de type et des fonctionnalités JavaScript modernes. TypeScript améliore l'expérience de développement en offrant un typage statique et une meilleure prise en charge des outils. Ce guide décrit les étapes à suivre pour créer un outil CLI à l'aide de TypeScript.

Étape 1: Configurez votre projet TypeScript

Commencez par configurer un nouveau projet TypeScript. Initialisez un nouveau projet npm et installez TypeScript et d'autres dépendances.

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

Le package ts-node permet d'exécuter directement des fichiers TypeScript, tandis que @types/node fournit des définitions de type pour Node.js.

Étape 2: créer un script CLI de base

Créez un fichier TypeScript qui servira de point d'entrée pour l'outil CLI. Ce fichier gérera les arguments de la ligne de commande et implémentera les fonctionnalités principales.

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);

Ici, le package commander est utilisé pour gérer les arguments de ligne de commande et fournir une interface simple pour définir des commandes et des options.

Étape 3: ajouter des dépendances CLI

Installez les dépendances supplémentaires requises pour la création de l'outil CLI. Pour cet exemple, commander est utilisé pour l'analyse des arguments.

npm install commander

Étape 4: Compiler le code TypeScript

Compilez le code TypeScript en JavaScript. Cette étape est nécessaire pour distribuer l'outil CLI.

npx tsc

Étape 5: Créer un script exécutable

Mettez à jour le fichier package.json pour inclure une section bin. Cette section mappe la commande CLI au fichier JavaScript compilé.

{
  "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"
  }
}

Étape 6: Testez votre outil CLI

Liez l'outil CLI localement pour le tester avant la publication. Utilisez npm link pour créer un lien symbolique dans le répertoire global node_modules.

npm link
my-cli-tool --name TypeScript

Conclusion

La création d'un outil CLI avec TypeScript implique la configuration d'un projet TypeScript, la création d'un script CLI de base, l'ajout de dépendances et la compilation du code. En exploitant le typage statique et les fonctionnalités modernes de TypeScript, il est possible de créer des outils CLI robustes et maintenables.