Skip to main content
In Bun, Response objects can accept a Node.js Readable. This works because Bun’s Response object allows any async iterable as its body. Node.js streams are async iterables, so you can pass them directly to Response.
https://mintcdn.com/bun-1dd33a4e-ciro-ws-proxy/5VvA5_lSqM955zlx/icons/typescript.svg?fit=max&auto=format&n=5VvA5_lSqM955zlx&q=85&s=2b3096741a4a19a7060ecd17dee174a4server.ts
import { Readable } from "stream";
import { serve } from "bun";
serve({
  port: 3000,
  fetch(req) {
    return new Response(Readable.from(["Hello, ", "world!"]), {
      headers: { "Content-Type": "text/plain" },
    });
  },
});