Documentation Index

Fetch the complete documentation index at: /docs/llms.txt

Use this file to discover all available pages before exploring further.

Skip to main content
In Bun, the console object is an AsyncIterable that yields lines from stdin.
index.ts
const prompt = "Type something: ";
process.stdout.write(prompt);
for await (const line of console) {
  console.log(`You typed: ${line}`);
  process.stdout.write(prompt);
}

Running this file starts a never-ending interactive prompt that echoes whatever you type.
terminal
bun run index.ts
Type something: hello
You typed: hello
Type something: hello again
You typed: hello again

Bun also exposes stdin as a BunFile, Bun.stdin. Use it to incrementally read large inputs piped into the bun process. Chunks aren’t guaranteed to be split line-by-line.
stdin.ts
for await (const chunk of Bun.stdin.stream()) {
  // chunk is Uint8Array
  // this converts it to text (assumes ASCII encoding)
  const chunkText = Buffer.from(chunk).toString();
  console.log(`Chunk: ${chunkText}`);
}

Running stdin.ts prints whatever is piped into it.
terminal
echo "hello" | bun run stdin.ts
Chunk: hello

See Utils for more utilities.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.