Interfaz de Línea de Comandos (Command Line Interface). Herramienta que permite interactuar con programas mediante texto en una terminal.
CLI (Command Line Interface) es una herramienta que permite interactuar con programas mediante comandos de texto en una terminal. Las CLIs son esenciales para desarrolladores porque: - Automatizan tareas repetitivas - Permiten scripting y pipelines - Son más rápidas que interfaces gráficas - Funcionan en servidores sin GUI - Son fácilmente integrables en CI/CD Librerías para crear CLIs: Commander.js, yargs, oclif, Inquirer.js.
// CLI básica con Commander.js import { program } from 'commander'; import inquirer from 'inquirer'; import chalk from 'chalk'; import ora from 'ora'; program .name('my-cli') .version('1.0.0') .description('Mi herramienta CLI'); // Comando simple program .command('greet <name>') .description('Saludar a alguien') .option('-l, --loud', 'Gritar el saludo') .action((name, options) => { const greeting = `Hola, ${name}!`; console.log(options.loud ? greeting.toUpperCase() : greeting); }); // Comando interactivo program .command('init') .description('Inicializar proyecto') .action(async () => { const answers = await inquirer.prompt([ { type: 'input', name: 'name', message: 'Nombre del proyecto:' }, { type: 'list', name: 'template', message: 'Elige template:', choices: ['react', 'vue', 'vanilla'] } ]); const spinner = ora('Creando proyecto...').start(); await createProject(answers); spinner.succeed(chalk.green('Proyecto creado!')); }); program.parse(); # Uso my-cli greet Juan my-cli greet Juan --loud my-cli init