May 23, 2026

Pixel perfect, comment section feral

Bun.Image

Bun wants to edit your pictures built-in, but the comments turned into a docs roast

TLDR: Bun.Image adds built-in picture editing to Bun, aiming to make a very common web task simple and package-free. Commenters liked the usefulness but instantly started fighting over whether the docs were overdue, dull, or suspiciously written by AI.

Bun.Image just arrived with a big promise: built-in picture editing for developers, no extra package hunting, no messy setup, just load an image, resize it, rotate it, and save it in another format. On paper, that sounds wonderfully boring in the best way — the kind of useful tool people need all the time. And that’s exactly why some commenters were thrilled. One fan cheered that copying the workflow of Sharp was a good thing, while another argued that making image handling part of the platform itself "makes complete sense" because this is now standard web work, not some exotic niche.

But of course, the real fireworks were in the peanut gallery. One drive-by jab sneered, "Glad to see that Bun is doing something that Java has been doing since 1998," which is the internet’s favorite way of saying, “Congrats on arriving late.” Then the thread took a gloriously petty turn into a full-on documentation trial. Multiple people accused the write-up of sounding AI-generated, with one commenter basically giving the docs a forensic examination and calling it bad technical writing — just better than most machine-made sludge. Ouch.

So the vibe is split: people seem to like the actual feature, especially the simple built-in pipeline and support for common image types, but they’re absolutely feasting on the documentation style. The tool may be practical, but the comments made it a drama-filled review of whether the product launch was slick, overdue, or secretly written by a robot having a thesaurus moment.

Key Points

  • Bun.Image is a built-in, chainable image-processing pipeline for JPEG, PNG, WebP, HEIC, and AVIF, built on libjpeg-turbo, spng, libwebp, and SIMD geometry kernels.
  • The API uses a Sharp-like workflow: create from input, chain transforms, choose an output format, and execute only when a terminal method is awaited.
  • Processing runs off the JavaScript thread, supports inputs such as paths, bytes, Blob, Bun.file(), and Bun.s3(), and warns against passing untrusted path strings directly.
  • Resize operations support multiple fit modes and resampling filters, and JPEG thumbnail generation can use M/8 IDCT scaling to avoid decoding the full-resolution buffer.
  • Output can be encoded to JPEG, PNG, WebP, HEIC, or AVIF and returned as bytes, Buffer, Blob, base64, data URL, or written to Bun.write-compatible destinations.

Hottest takes

"Good! I like the pipeline workflow." — wxw
"doing something that Java has been doing since 1998" — onesingleblast
"one of the better pieces of LLM-output documentation" — furyofantares
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.
Bun.Image - Weaving News | Weaving News