name: bun-file-io
packages/opencodeBun.file(path) is lazy; call text, json, stream, arrayBuffer, bytes, exists to read.file.size, file.type, file.name.Bun.write(dest, input) writes strings, buffers, Blobs, Responses, or files.Bun.file(...).delete() deletes a file.file.writer() returns a FileSink for incremental writes.Bun.Glob + Array.fromAsync(glob.scan({ cwd, absolute, onlyFiles, dot })) for scans.Bun.which to find a binary, then Bun.spawn to run it.Bun.readableStreamToText/Bytes/JSON for stream output.node:fs/promises for directories (mkdir, readdir, recursive operations).fs for file access.Bun.file(...).exists() before reading.arrayBuffer() and MIME checks via file.type.Bun.Glob + Array.fromAsync for scans.Bun.readableStreamToText.Bun.write(Bun.file(path), text).NOTE: Bun.file(...).exists() will return false if the value is a directory.
Use Filesystem.exists(...) instead if path can be file or directory
path.join/path.resolve for paths..catch(...) over try/catch when possible.