//process command line input //and start the server const processCmdInput = () => { const stdin = process.openStdin(); console.log("\n\nAvailable interfaces:") Object.keys(interfaces).forEach((interface,index) => { console.log(`${interface}`) }) console.log("Type your interface down like en0 and press enter:") stdin.addListener("data",(val) => { const selectedOption = capitalize(val.toString().trim()); console.log(`you entered: ${selectedOption}`); let selectedInterface = interfaces[selectedOption] && interfaces[selectedOption].find((interface) => { return interface.family === 'IPv4' }); if(selectedInterface) { console.log("\n\nQR Code generated : Please scan and download the file") qrcode.generate(`http://${selectedInterface.address}:3000/download`, { small: true }); app.listen(3000, selectedInterface.address) stdin.removeAllListeners('data') //no need to listen console prompt } else { console.error("Can't start server on the given interface, please try other interface") } }); }