#​741 — June 20, 2025

Read on the Web

Together with  Palette

JavaScript Weekly

📖 Exploring JavaScript (ES2025 Edition) — Dr. Axel is back with his latest book covering all things relating to modern JavaScript at the language level (think built-in data types, modularity, how objects, classes and promises work, etc.). As with all of Axel's books, it’s available to buy but also to read online in HTML form for free. He’s also produced a set of flashcards to help you learn language features in both HTML and Anki forms.

Dr. Axel Rauschmayer

💡 The two sets of flashcards (including API flashcards) are worth a look on their own as you'll almost certainly learn/remember something useful looking through them.

How Notion Cut Typing Latency By 15% — Stop guessing why your web app is slow. Palette’s production JS profiler tells you why, down to the line of code. Get started for free today.

Palette sponsor

Biome v2: The First Type-Aware Linter That Doesn't Require tsc — Boasts being the first JavaScript and TypeScript linter that doesn’t require the TypeScript compiler, while still offering type-aware linting rules. There’s a lot to enjoy here, including initial support for linter plugins and improved monorepo support, though note that Vue and Svelte templates aren’t yet supported.

Emanuele Stoppa

IN BRIEF:

RELEASES:

  • Bun v1.2.16 – The high performance JS runtime adds support for returning files for routes via Bun.serve, along with a slew of bugfixes and Node compatibility improvements.

  • Astro 5.10 – The content-driven JS framework makes its responsive images feature stable, and adds a new experimental feature: live content collections.

  • ESLint v9.29.0 – Now supports the syntax used for explicit resource management (using and await using).

  • Hono 4.8, Relay v20, Fastify 5.4, NeutralinoJS 6.1, Axios 1.10.0

📖  Articles and Videos

▶  Compiling JavaScript Ahead-of-Time — The creator of the Porffor JavaScript compiler talks about the various ways to make JavaScript faster to execute, before digging into Porffor’s approach.

Oliver Medhurst

Using await at the Top Level in ES Modules — Top-level await is supported in all modern browsers and in Node.js (beyond v16) in .mjs files or .js files specified as modules.

Matt Smith

Clerk OAuth Gets a Big Upgrade — Now Fully MCP-Ready — Clerk OAuth now supports token revocation, consent screens, dynamic clients, & more—now fully MCP-ready. Learn more here.

Clerk sponsor

JavaScript Broke the Web (and Called It Progress) — An esteemed SEO consultant shares his thoughts on the complexity of the modern Web and JavaScript’s role in particular.

Jono Alderson

How TypeScript Solved Its Global Iterator Name Clash — ES2025 adds an Iterator class containing iterator helper methods. However, this class conflicts with TypeScript’s existing types for iterators..

Dr. Axel Rauschmayer

📄 'How Cursor Upgraded Our Storybook in Just 2 Hours' – If you’re going to use AI, it might as well be to speed up boring tasks. Uri Klar

📄 Coding a 3D Audio Visualizer with Three.js, GSAP and Web Audio API Filip Zrnzevic

📄 Bringing React's <ViewTransition> to Vanilla JS Joeri Sebrechts

🛠 Code & Tools

<syntax-highlight>: A Custom Element for Syntax Highlighting — A custom element that uses the CSS Custom Highlight API (supported by most modern browsers) for syntax highlighting so you don’t need to retreat to the age-old method of wrapping every token in spans. GitHub repo.

André Ruffert

React Native 0.80 Released — React Native 0.80 lands with React 19.1, a new opt-in set of stricter TypeScript types, and experimental support for prebuilt dependencies on iOS to speed up builds. The legacy architecture is now officially 'frozen', with warnings for APIs slated for future removal.

Cohen, Cucci, Dall'Agnol, and Falch

Handsontable: Spreadsheet-Like JavaScript Data Grid for Your App — Feature-rich data grid for developers seeking a powerful, customizable, and accessible solution to manage complex data.

Handsontable sponsor

react-searchable-dropdown: A Customizable Dropdown Component — A modern, accessible, and customizable dropdown component that supports large datasets with virtualization, lets users create new options, works with both simple and complex data, and is easy to style and extend. GitHub repo.

Lucio D'Alessandro

WelsonJS: Build Windows Apps Using Windows' Built-In JS Engine — WelsonJS = Windows + Electron-like + JS. Optimized for environments with limited computing power.

Go Namhyeon

📰 Classifieds

Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort. Relied on by Dropbox, Wiz, Lattice, Bilt Rewards, etc.


🚀 Build VueJS forms your way with Enforma — UI-agnostic (PrimeVue, Vuetify, Quasar), schema-ready, repeatable fields, powerful validation.


🎤 First speakers at JSNation US: Addy Osmani, Scott Tolinski, Ryan Carniato & more! Nov 17 & 20 in NYC & online. Early Bird going fast!

👀  Elsewhere...

Here's a selection of things from the broader ecosystem this week: