Note — Bun provides a browser- and Node.js-compatible console global. This page only documents Bun-native APIs.

In Bun, the console object can be used as an AsyncIterable to sequentially read lines from process.stdin.

for await (const line of console) {

This is useful for implementing interactive programs, like the following addition calculator.

console.log(`Let's add some numbers!`);
console.write(`Count: 0\n> `);

let count = 0;
for await (const line of console) {
  count += Number(line);
  console.write(`Count: ${count}\n> `);

To run the file:

bun adder.ts
Let's add some numbers!
Count: 0
> 5
Count: 5
> 5
Count: 10
> 5
Count: 15