Antes de npm 8.0, era posible instalar paquetes npm mediante programación, así:
const npm = require('npm'); npm.load((error) => { if (error) return console.log(error); npm.commands.install([package], (error, data) => { if (error) return console.log(error); // command succeeded, and data might have some info }); npm.on('log', (message) => { console.log(message); }); }); Pero decidieron refactorizar las cosas y se eliminó el soporte para la API programática. Por supuesto, existe la opción de mantener la versión de npm por debajo de la 7.24.2 que es la última versión compatible, pero se encontraron algunas vulnerabilidades en esas versiones y, a pesar de que son inofensivas, en mi caso, la consola da miedo a los usuarios.
¿Hay alguna alternativa fiable a este problema?