Conversión de CLI a Binario e Instalación Local en Node.js

Clase 26 de 26Curso de Node.js Avanzado

Resumen

Crear tu propia interfaz de línea de comandos (CLI) en Node.js y poder utilizarla desde cualquier parte del sistema proporciona agilidad y eficiencia a tu flujo de trabajo. Aprende los pasos clave para transformar tu CLI en un binario e instalarlo fácilmente en tu máquina utilizando npm.

¿Cómo definir el binario en el archivo package.json?

Esencialmente, lo primero es editar tu archivo package.json. Aquí, luego de la sección de scripts existentes, añadirás una nueva sección llamada bin. Esta sección especificará explícitamente el nombre del comando y el archivo que ejecutará al invocarse.

Asegúrate de seguir estos pasos:

  • Añadir la sección bin.
  • Elegir un nombre sencillo y claro para tu comando, como platzi-assistant.
  • Apuntar dicho comando hacia el archivo que se ejecutará, por ejemplo ai-assistant.
  • Asegúrate de copiar y pegar exactamente el nombre del archivo para evitar errores.

Tu archivo package.json debería verse similar a esto:

{
  "bin": {
    "platzi-assistant": "ai-assistant"
  }
}

¿Cómo instalar y usar tu CLI localmente con npm link?

Una vez configurado tu archivo package.json, estarás listo para instalar tu CLI localmente, para lo cual utilizarás el comando npm link.

Sigue estos pasos sencillos:

  • Asegúrate de estar en el directorio que contiene tu archivo package.json.
  • Ejecuta en tu terminal:
npm link

Después de ejecutarse este comando, podrás utilizar platzi-assistant desde cualquier punto en tu terminal sin necesidad de estar en un directorio específico.

No olvides que, si tu CLI requiere una API key, como la mencionada para Gemini, debes asegurarte de establecerla previamente antes del uso.

¿Por qué publicar tu CLI en npm y cómo hacerlo?

Publicar tu paquete CLI en npm permite utilizarlo globalmente o ejecutarlo fácilmente con npx sin instalaciones previas. Puedes instalar paquetes publicados globalmente mediante:

npm install -g nombre-del-paquete

O ejecutarlos temporalmente sin instalación usando el comando npx:

npx nombre-del-paquete

Explorar la publicación en npm puede llevar la usabilidad de tus creaciones a otro nivel. Considera revisar el curso especializado en publicación npm que Platzi tiene disponible si deseas profundizar en estos temas.

¿Tienes ideas creativas para comandos CLI útiles que puedas desarrollar? ¡Compártelas en comentarios y motiva a otros a utilizarlas y contribuir!