listen-in
listen-in is a simple to use, Promise based, STDIN listener for node applications
Motivation
listen-in was written because I wanted a way to pass secure information into Node applications with out adding EXPORT
or configuration files to my user profile.
Options
envToken [String]
: add value to process.env
under this name. (default null
)message [String]
: Message to prompt user with. (default null
)insecure [Boolean]
: Passes user input into the then
.
Basic Use
const lstn = require('listen-in');
lstn({
message: 'First Name: ',
insecure: true
})
.then(data => {
console.log(`First Name: ${data}`);
});
Use with es2017 Async/Await
import lstn from 'listen-in';
const config = async () => ({
dbName: 'production',
dbUser: 'username',
dbPassword: await lstn({ insecure: true, message: 'Database Password: ' })
});
Use for updating process.env
:
import lstn from 'listen-in';
function getConfigs() {
return lstn({ message: 'Database Password: ', envToken: 'dbp'})
.then(() => ({
dbName: 'production',
dbUser: 'username',
dbPassword: process.env.dbp
}));
}