【文章标题】:A shot-scraper-style JSON API on Bun 1.4’s new Bun.WebView
【文章正文】: Research:
A shot-scraper-style JSON API on Bun 1.4’s new Bun.WebView
Today saw the long awaited
release of Bun 1.4
, the first stable version since the infamous Rust rewrite
a few months ago
.
Interestingly, the Rust rewrite was downplayed in the release notes, which introduced a bewildering array of new features and claimed 2,900 additional bug fixes:
Bun 1.4 adds +1,517 tests from the Node.js test suite - our biggest jump in Node.js compatibility since Bun 1.0. Bun v1.4 also fixes over 2,900 issues. It reduces idle CPU usage by 5x, reduces memory usage by up to 35%, and starts 50% faster on Linux. It adds
Bun.Image
,
Bun.WebView
,
Bun.markdown
,
Bun.cron()
,
Bun.Terminal
,
bun run —parallel
,
bun test —parallel
,
bun audit fix
,
bun dedupe
, and
bun prune
. And it rewrites Bun from Zig to Rust.
Of these the one that most caught my eye was
Bun.WebView
, which adds first class support for browser automation to Bun core using either macOS WebKit or control of a local Chromium process via the Chrome DevTools Protocol (CDP).
I had Claude Code for web build a prototype of a web API providing the ability to load a web page and then execute JavaScript against it, inspired by my
shot-scraper javascript
CLI tool - partly to see how much RAM would be needed by such a service.
Here’s
that TypeScript server implementation
, which appears to need a 192MB-256MB container to run a full Chrome against complex web pages - tested using cgroups.
Tags:
browsers
,
javascript
,
ai
,
rust
,
typescript
,
generative-ai
,
llms
,
coding-agents
,
bun