# Standard Input > [Standard input][standard-streams].
## Usage ```javascript var stdin = require( '@stdlib/streams/node/stdin' ); ``` #### stdin [Standard input][standard-streams] as a [Readable stream][readable-stream]. ```javascript var string2buffer = require( '@stdlib/buffer/from-string' ); var Buffer = require( '@stdlib/buffer/ctor' ); var data = []; var len = 0; stdin.on( 'readable', onReadable ); stdin.on( 'error', onError ); stdin.on( 'end', onEnd ); function onReadable() { var chunk; while ( true ) { chunk = stdin.read(); if ( chunk === null ) { break; } if ( typeof chunk === 'string' ) { chunk = string2buffer( chunk ); } data.push( chunk ); len += chunk.length; } } function onError( error ) { if ( error ) { console.error( error.message ); } } function onEnd() { data = Buffer.concat( data, len ); console.log( data.toString() ); // => '...' } ```
## Examples ```javascript var proc = require( 'process' ); var stdin = require( '@stdlib/streams/node/stdin' ); var stdout = require( '@stdlib/streams/node/stdout' ); // Set the encoding: stdin.setEncoding( 'utf8' ); // Create an echo stream: stdin.pipe( stdout ); // Push data to `stdin`: stdin.push( 'beep' ); stdin.push( ' ' ); stdin.push( 'boop' ); stdin.push( '\n' ); // End the stream: stdin.push( null ); // Ensure the process closes: setTimeout( proc.exit, 1000 ); ```