🏖️ I'm back from an intense week of Disney vacationing with the family, so I feel more tired than before I left 😅… but it's time to catch up with all things JavaScript!
__
Your editor, Peter Cooper
☕ Grab the biggest coffee you can if you intend to get through the release post. It's easily the longest I've ever seen in fifteen years of running this newsletter.
Webflow for Developers — Most tools make you choose between visual builders and real code. Webflow gives you both: APIs, SDKs, Code Components, and Webflow Cloud to deploy custom apps, plus an MCP server to build with agents.
Webflow
🎵 Music Theory for JavaScript Developers — A from-first-principles tour of music theory, deriving the twelve notes, scales, chords and progressions from plain arithmetic, with runnable Web Audio examples throughout.
Luke Haas
Solid 2.0 RC: The Big <Reveal> — Async now lives in the reactive graph, so async data flows through ordinary memos. createResource, batch and startTransition are gone. SolidStart gets retired into a start: true flag on the Vite plugin, and the API is now frozen.
Ryan Carniato
RELEASES:
-
Electron 44 – No post yet, but it has dropped 32-bit support, requires macOS 13+,
clipboardis now aligned with the W3C Clipboard API, and addednet.WebSocketand the ability to set window opacity on Linux. -
Waku 1.0 RC – Minimal RSC-first React framework, now API-frozen ahead of v1 final, adding type-safe navigation that catches bad routes at compile time and experimental instant paints from cached route shells.
-
SvelteKit 3 Release Candidate, React Native 0.87, ESLint 10.9 (and 10.9.1), Axios 1.20.0, pnpm 11.23
The Wicked Reason Removing Code Beats Better Scheduling — A lot of performance work goes into shuffling when things load, when the bigger win is usually not sending the code at all. Alex Russell makes the case that this is a management problem more than a technical one.
Alex Russell
ESM and CommonJS: What import and require Actually Do — They look like the same operation, but Gabor shows how an ESM import stays wired to the exporter's binding, while a destructured require() only holds a copy. The consequences show up in circular dependencies and published packages.
Gabor Koos
📺 The Creator of TypeScript on 10x Faster TypeScript and Why AI Won't Replace SWEs – A candid hour-long interview with Microsoft's Anders Hejlsberg. Ryan Peterman
📄 Hiding Internal State in TypeScript Objects – How a non-exported unique symbol used as a property key keeps internal state out of Object.keys and JSON.stringify. Carlos Menezes
📄 Reliable Query Prefetching with TanStack Router Dominik Dorfmeister
📄 I Patched the TypeScript Compiler to Add Up Nine Numbers Hugo Vilela
-
Ionic Framework v9 – The mobile-first UI toolkit for React, Angular and Vue returns after a two-year gap with React Router 6 support, zoneless change detection in Angular 21+, and more. There's an upgrade guide for v8 users.
-
Papa Parse 5.7 – Fast, flexible CSV-to-JSON and JSON-to-CSV library.
-
🌐 MapLibre GL JS 6.6 – GPU-accelerated vector tile rendering library for interactive maps in the browser.
-
📊 Plotly.js 4.0 – Standalone library for creating interactive data visualizations.
-
GTKX 1.3 – Create native GTK-powered Linux desktop apps with React.
-
📺 YouTube.js 18.0 – JavaScript client for YouTube's internal API.
📢 Elsewhere in the ecosystem
Some other interesting tidbits in the broader landscape:
-
Last week the Next.js team did an AMA (Ask Me Anything) on Reddit and the thread is packed with answers and insights.
-
🖼️ Jake Archibald posts an update on Firefox's coming support for JPEG XL which Chrome is also planning to support soon.
-
📊 Gajus Kuizinas has put together a CSS-in-JS Arena comparing StyleX, Panda CSS and his own brand new Bamboo CSS on the same React Router 8 app.
-
Did you know splitting a git commit is now a single command (in Git 2.54+)?
git history split <ref>walks the change hunk by hunk and prompts for both messages. -
🕹️ An N64 emulator written in JavaScript. If you have a ROM file to use, you can play with it here.














