Announcing TypeScript 6.0 — Over six months in the making, TypeScript 6.0 is designed to bridge the gap between its self-hosted compiler and the (almost ready) Go-powered native compiler of TypeScript 7.0 . There are new features (Temporal improvements, RegExp.escape, and more), but most important are the changes to help you prepare for 7.0:
Numerous default changes: strict is now true, module is esnext, rootDir defaults to ., and more.
A change that will affect many apps is types defaulting to [] rather than pulling in everything from node_modules/@types.
A large number of Deno employees announced (e.g.) they were departing the company last week. Deno employee Josh Collinsworth, not speaking for the company, noted"Deno is not going away. These are just hard times."
📗 Chibivue is a code project and associated online book that provides, and explains how to build for yourself, a minimal Vue.js implementation.
RELEASES:
Next.js 16.2 – The React framework gets much faster next dev startup and ~50% faster rendering.
Storybook 10.3.0 – The component workshop adds Vite 8, Next.js 16.2, and ESLint 10 support, plus a preview of an MCP server for React dev.
⚠️ All maintained Node.js versions are due security releases later today to address nine vulnerabilities.
Deno 2.7.6 – deno eval auto-detects CJS vs ESM, and --cpu-prof-flamegraph generates interactive SVG flamegraphs.
The Three Pillars of JavaScript Bloat — Three reasons your node_modules is huge: needless ES3-era compat packages, micro-libraries with a single consumer, and ponyfills for APIs that shipped years ago! James, known for the e18e ecosystem performance project, offers some ways to calm the chaos.
📊A React SSR Framework Performance Showdown — A large benchmark of TanStack Start, React Router, and Next.js under heavy load. The results led to patches benefitting both TanStack and React generally.
pnpm 11 Beta 0: A Sneak Peek — The efficiency-focused npm alternative continues its outsized impact on JS package management. It's moving to a SQLite-powered store, gets a configuration overhaul, and has stricter build security by default. Four new commands, too, including pnpm sbom for generating Software Bill of Materials JSON documents.
pnpm contributors
Edge.js: Running Node Apps Inside a WebAssembly Sandbox — A new, in-alpha runtime that maintains full Node compatibility while offering isolation via WebAssembly. Existing apps/modules run unmodified with system calls sandboxed, and the JS engine used is pluggable (between V8, JavaScriptCore and QuickJS). More info on the homepage.
ArrowJS 1.0: Fast, Reactive UI Runtime Built on Platform Primitives — Built around ES modules, template literals and the DOM, it can also isolate component logic inside WASM sandboxes while rendering full inline DOM directly. First unveiled in 2022 by the creator of FormKit, it's now clearly finding its feet.
Flaky tests slowing down dev? Meticulous gives engineers confidence to ship faster by autonomously testing every edge case of your web app.
📢 Elsewhere in the ecosystem
The Microsoft Visual Studio Code team shares how they use AI to work on VS Code, from organizing their work and handling issues, to pushing out new releases. If you've noticed VS Code is getting a release every week now, this is why!
🔒 Perhaps more than ever, it's essential to ensure no secrets have sneaked into your repos. Secretlint is a linter dedicated to that task.
Back in 1989, Rob Pike, famous for his work on both the Go programming language and co-creating UTF-8, wrote Rob Pike's 5 Rules of Programming which has gone viral this week and still apply in 2026!
🤖 Addy Osmani introduces us to comprehension debt. In a world of agent-produced code, the question is now not “how do we generate more code?” but “how do we actually understand more of what we’re shipping?”
Dislike all the menu icons that macOS 26 (Tahoe) has introduced? There's a solution: defaults write -g NSMenuEnableActionImages -bool NO
Still Writing Tests Manually? Meticulous AI Is Here — Notion, Dropbox, Wiz and LaunchDarkly now use a testing paradigm they can’t work without. Built by former Palantir engineers, Meticulous automatically creates an evolving suite of E2E UI tests, delivering exhaustive coverage with no developer effort.
Meticulous sponsor
Vite 8.0 Released — A mega release for the popular build tool. Designed to be a smooth upgrade, there’s a lot behind the scenes: @vitejs/plugin-react v6 no longer needs Babel, Rolldown replaces Rollup and esbuild, Wasm SSR support, browser console forwarding to the terminal, and big performance gains.
Vite
💡 VoidZero has also open sourced its Vite+ toolkit. Originally intended to be a commercial project, Vite+ combines Vite, Vitest, Oxlint, Oxfmt, Rolldown, and tsdown into a single, unified toolchain, and it's now in alpha.
Electron 41.0 – The cross-platform desktop app framework adds ASAR Integrity digest and MSIX auto-updating support, improves Wayland support, and updates to Chromium 146, Node v24.14.0, and V8 14.6.
Nitro v3 Beta – Extend your Vite app with a production-ready server, compatible with any runtime. Handy if you want to try building your own framework!
Vitest 4.1 – Next-gen testing framework, now supporting Vite 8.
Source Maps: Shipping Features Through Standards — Source maps are JSON files that provide debuggers and similar tools with a mapping between minified/transformed code and the original codebase. Jon gives us a tour and takes us behind the scenes of how the feature has progressed towards becoming a standard (ECMA-426).
Jon Kuperman (Bloomberg)
How we Rewrote 130K Lines from React to Svelte in Two Weeks — A common adage in recent months has been that the use of LLMs and coding agents could lock us into using only the most popular frameworks, but in reality they also make switching between frameworks easier than ever before.
Best Practices for Svelte Developers — A brand new page in the Svelte docs that outlines some best practices for writing more robust Svelte apps.
Svelte Docs
An Empirical Study of Frontend Memory Leaks — Analysis of five hundred React, Vue and Angular apps for patterns that lead to memory leaks. Missing timer cleanups and event listener removals cause the majority of problems.
Nuxt 4.4: The Full-Stack Vue Framework — The full-stack Vue framework that includes routing (now powered by Vue Router v5), server-side rendering, and data fetching out of the box now adds custom useFetch/useAsyncData factories, typed layout props, build profiling, and more.
Daniel Roe and the Nuxt Team
Reveal.js 6.0: The HTML Presentation Framework — A long-standing way to bring elegant presentations to anyone with a browser. v6.0 has some breaking changes, switches to Vite, and introduces an official React wrapper.
RedwoodSDK 1.0 Released: The Cloudflare-Native React Framework — A server-first React framework, built as a Vite plugin, that integrates deeply with the Cloudflare platform (why?) and its provision of workers, databases (D1), durable objects, storage (R2), AI APIs, etc.
Peter Pistorius
Defuddle 0.14.0 – Get the main content of a page as Markdown. A modern implementation of the ideas behind Mozilla’s Readability.
Extension.js 3.9 – Framework for developing fast, unified cross-browser extensions with zero configuration.
🌷 JSNation - Amsterdam & Online - This June, catch the latest trends in modern Web development from the people shaping its present & future.
📢 Elsewhere in the ecosystem
📈 In The 49MB Web Page, Shubham Bose expresses surprise at finding that loading a single NY Times page results in 422 network requests and 49 megabytes of data transferred. He reflects on the problems that have led to this being a common experience on news sites.
Solid v2.0.0 Beta: The <Suspense> is Over — After a long experimental phase, Solid 2.0’s first beta lands with first-class async support where computations can return Promises or async iterables, and the reactive graph suspends and resumes around them natively. <Suspense> is retired in favor of <Loading> for initial renders, and mutations get a first-class action() primitive with optimistic support. For existing users the breaking changes are substantial, but there’s a migration guide.
Ryan Carniato
💡 Ryan also had an AI write up the architectural case for Solid 2.0, framing fine-grained reactivity as the only sustainable model for an AI-agent world. He also did ▶️ a livestream where he tried to break Solid 2.0 by pushing against its limits.
The Most Loved JavaScript Course Year After Year — JavaScript: The Hard Parts is rated 4.92 on average by thousands of developers. Build real mental models for how JavaScript works, from execution context and closures to async behavior and modern language features.
Frontend Masters sponsor
TypeScript 6.0 Release Candidate — v6.0 is primarily a stepping stone to the eventual Go-powered native TypeScript 7.0 due later this year and all the necessary tsconfig.json changes will put you in a good position for the future. There are only a few small changes in the RC vs the recent beta.
📊 Minification Benchmarks is a frequently updated comparison of different JavaScript minifiers. SWC is in the lead overall, but Minify and Oxc's minifier aren't far behind and are much faster.
Astro 6.0 – astro dev is now using Vite’s new Environment API so you can now run your exact prod runtime during dev. Also, a new Fonts API takes care of custom fonts.
Knockout 3.5.2 – The classic MVVM library gets its first update in six years!
Seven Years to TypeScript: Migrating 11,000 Files at Patreon — The popular creator platform had a million lines of JavaScript on its hands, and while adopting TypeScript on new code was going well, converting all their code was a daunting task. This retrospective covers the tools and techniques involved.
A Tale of Stealing npm Publish Tokens by Opening a GitHub Issue — A repo had an AI-powered issue triage system that ran when any issue was opened, and the issue’s title was fed directly into the prompt… and that was just step one of the three-stage attack explained here.
Neciu Dan
Wikipedia Hit by Self-Propagating JavaScript Worm — A writeup of how a dormant script, accidentally triggered by a Wikimedia employee, exploited a shared global script and vandalized nearly 4,000 pages on Wikipedia’s Meta-Wiki.
ArkType 2.2: Use Your TypeScript Types as Runtime Validators — A TypeScript-first validation library where types and validators are the same thing. Write a type once and it becomes both the static type and the runtime validator. In v2.2, type.fn brings runtime-validated functions, checking inputs and return values automatically.
Flaky tests slowing down dev? Meticulous gives engineers confidence to ship faster by autonomously testing every edge case of your web app.
Trigger.dev handles queues, retries, and long-running tasks so you can build production-ready agents and TypeScript workflows reliably at scale.
📢 Elsewhere in the ecosystem
It's been eight years since we last mentioned JSLinux, Fabrice Bellard's JavaScript-powered Linux VM that runs in the browser. He's still working on it, and as of this week it supports x86_64, AVX-512 and APX.
Bun v1.3.10 Released: A Surprisingly Big Update — Bun’s REPL has been completely rewritten with many improvements (both practical and cosmetic), there's a --compile --target=browser option for building self-contained HTML files with all JS, CSS, and assets included (ideal for simple JS-powered single page apps), full support for TC39 stage 3 ES decorators, a faster event loop, barrel import optimization, and more.
Jarred Sumner
Still Writing Tests Manually? Meticulous AI Is Here — Notion, Dropbox, Wiz and LaunchDarkly now use a testing paradigm they can’t work without. Built by former Palantir engineers, Meticulous automatically creates an evolving suite of E2E UI tests, delivering exhaustive coverage with no developer effort.
The React Foundation has officially launched taking over ownership of React, React Native and JSX. It has a board of eight founding members (including Meta) with Seth Webster, former head of React at Meta, as exec director.
Making WebAssembly a First-Class Citizen on the Web — WASM has come a long way but remains tricky to work with on the Web, with even performing a console.log requiring a lot of glue code. Ryan makes the case that the WebAssembly Component Model could change this by letting modules bind directly to browser APIs, load directly from script tags, and more.
Ryan Hunt
We Deserve a Better Streams API for JavaScript — “I’m publishing this to start a conversation,” says James who shows off an alternative approach to Web streams that works around the current standard’s “fundamental usability and performance issues.” The end results and James' extensive experience in this area make for a compelling argument.
The Illusion of JavaScript-Powered 'DRM' — An explanation of why building a DRM/copy protection system purely in JavaScript (rather than EME-based approaches) is ultimately just “sophisticated friction”, at best, and uses a tale of breaking a (NSFW) platform’s protection to make the point.
🎨Color Thief 3.0: Grab Color Palettes from Images — Given an image, this uses canvas to return a list of the dominant colors. Works in browsers or Node. Now with OKLCH support, Web Worker offloading, ‘live extraction’ for video, canvas and image elements, and more. GitHub repo.