read
For reading user input from stdin.
Similar to the readline builtin's question() method, but with a
few more features.
Usage
const { read } = require('read')
// or with ESM: import { read } from 'read'
try {
const result = await read(options)
} catch (er) {
console.error(er)
}Options
Every option is optional.
promptWhat to write to stdout before reading input.silentDon't echo the output as the user types it.replaceReplace silenced characters with the supplied character value.timeoutNumber of ms to wait for user input before giving up.defaultThe default value if the user enters nothing.editAllow the user to edit the default value.terminalTreat the output as a TTY, whether it is or not.inputReadable stream to get input data from. (defaultprocess.stdin)outputWritable stream to write prompts to. (default:process.stdout)completerAutocomplete callback (see official api for detailshistoryHistory array, which will be appended to.
If silent is true, and the input is a TTY, then read will set raw mode, and read character by character.
Contributing
Patches welcome.