What Claude spends building with 12 JavaScript stacks

#​809 — November 3, 2026

Read on the Web

JavaScript Weekly

The AI Cost of JavaScript Frameworks

Nolan Lawson had Claude build the same app five times in each of twelve JS stacks to test common "X is better for agents" claims. Costs varied significantly between runs, and Gautam Parab found that the observed cost ranges overlapped or touched for most pairs of frameworks.

But a clearer difference was in the median amount of JavaScript sent to browsers: 0KB for Astro, 18K for Hono+htmx, 36K for SvelteKit, and 115–142K for React Router, TanStack Start and Next.js. If you've gone "hands-free", Nolan asks, why stick to a particular stack you chose when you wrote all the code? His benchmark is on GitHub to try for yourself.

Nolan Lawson

Run AI Coding Models on Your Own Machine — Local models are now good enough for everyday coding. Learn to run them on your own Mac or GPU, wire them into your editor and terminal agents, and keep your code private with no per-token bill.

Master.dev sponsor

Why Is This Fingerprinting Script 'Creating Bioweapons'? — A crawl of sites to collect canvas fingerprinting examples (which you can see, visually, at fingerprint.garden) found an anti-analysis technique where JavaScript identifiers were named after… taboo topics, with a prompt hidden in invisible Unicode, all designed to make LLMs refuse to work on the code!

Veritas

💡 Canvas fingerprinting is a technique that uses quirks of how different clients render canvas elements, in order to distinguish browser environments.

IN BRIEF:

RELEASES:

📖 Articles and Videos

"No, npm, 'estee' is not a typo of 'testem'" — Shane tried to publish a CLI called estee and hit npm's typosquatting filter, which (as best as we can tell) rejects names within a small Levenshtein distance of popular packages' names.

Shane Friedman

Shrinking clarity.js: When Cleaner Code Gzips Worse — Microsoft let an agent run 50+ size experiments on its analytics script. A big win came from dropping import * namespace objects, while good-practice refactors like extracting helpers actually made the gzipped output bigger.

Manu Nair (Microsoft)

Workshop: How to Implement Session Replay — Filters, custom tags, and sampling settings for finding the sessions that matter. Nov 5, 10am PT.

Sentry sponsor

'Nothing Installs at Our Company Until It's a Week Old' — Many recent package hijacks were caught within hours, so Bruno's company now makes new releases wait a week. He explains what this approach broke, what cooldowns don't stop, and settings for popular package managers.

Bruno Jurković

Timing Ten Design Systems, Then Fixing the Slow Ones — Den timed ten design systems (MUI, Ant Design, and Ionic among them) opening a 249-option select and ticking 100 checkboxes, then profiled the slow ones to find out why.

Den Odell

Using Bun? Dependabot Can't See Most of Your Dependencies — GitHub's dependency graph doesn't parse bun.lock, so Dependabot alerts cover only direct dependencies. Nicolas has some tips for improving matters.

Nicolas Charpentier (Shortcut)

📄 How Hard Is It to Check for Whitespace? – Why Java, Python and JavaScript disagree on what counts as whitespace. Sergey Tselovalnikov

📄 A Proposal: How to Hire Junior Engineers in the Age of AI – The npm co-founder thinks traditional coding interviews are dead. Laurie Voss

📄 How to Make postMessage Type-Safe in Under 350 Bytes Pavel Grinchenko (Evil Martians)

📄 The Web Can't Afford a JavaScript Runtime Monoculture Kate Holterhoff (RedMonk)

🛠 Code & Tools

Handwired: Compile Regular JavaScript into a Neural Net — A new mind-bender from Pretext's creator: a compiler that turns JavaScript into an exact network of ReLUs and matrix multiplies that run on the GPU. Demos include a 130-layer 'mini desktop' and a WebGPU search over 100K JSON documents.

Cheng Lou

Build Smarter JavaScript Applications With Live Search Data — Add search, shopping, maps, news, trends, flights and hotels results with a single developer-friendly JavaScript SDK.

SerpApi sponsor

🌐 x18n: Lint and Maintain i18n Files for Any Framework — Anthony Fu's successor to i18n-ally scans locale files and translation calls and reports missing, unused and broken keys (like how tsc --noEmit reports type errors).

Anthony Fu

djs: A New 'Suspend Anywhere' JavaScript Engine — Armin (of Flask fame) built an engine to run scripts in WebAssembly that can snapshot the VM's state and resume elsewhere, even mid-await.

Armin Ronacher

webframe: Run a Web Page Like a Command-Line Program — Point it at a URL or HTML file and it runs the page in a hidden system web view, piping console.log() to stdout and exceptions to stderr. No bundled browser or Playwright needed.

Jeff Lindsay

phoria2: A Small WebGL 2 Library for 3D Charts — A dependency-free 3D library aimed at dashboards and product viewers, with an API you can 'learn in an afternoon'. Plenty of live demos on the page.

Kevin Roast

  • Shiki 4.6 – Powerful code syntax highlighter, now with faster decoration handling and compressed Oniguruma WASM binary.
  • Preact 11.1 – A new preact/compat/compiler-runtime entry point lets code compiled by React Compiler run on Preact too.
  • Postgres.js 4.0 – The popular Postgres client for Node, Bun and Cloudflare Workers gets a rewrite and goes ESM-only.

📰 Classifieds

💸 Every OTP you send costs money. Fraudsters trigger them by the thousands. Fingerprint recognizes the device before you text. Learn how.

Your coding agent can write the app. Expo is the agentic mobile infrastructure that takes it from a repo to the App Store.

CodeAF fixed 2x OpenCode's issues and nearly 4x Claude Code's on the same open model, at up to 4.8x less per fix. Open source, Apache 2.0.

📢 Elsewhere in the ecosystem

参与讨论