10 Oct 2025

feedJavaScript Weekly

Vite gets its own documentary

#​756 - October 10, 2025

Read on the Web

JavaScript Weekly

Vite: The Documentary - From the same creators of the fantastic ▶️ Node.js, ▶️ Angular and ▶️ React documentaries comes an up to date look at Vite, the build tool that has taken the JavaScript ecosystem by storm in recent years. Many luminaries make an appearance to tell their stories, including Evan You, Rich Harris, and Ryan Carniato. (39 minutes.)

CultRepo

💡 In related news, Vite+ (VitePlus) has appeared, a future, more commercial offering of the Vite toolchain aimed at teams. More news on this next week.

Go from Monolith to Monorepo - Join Mike North for this course on architecting maintainable, fast and light codebases. You'll learn how to refactor a codebase into a TypeScript monorepo using tools like Nx and Lerna - covering dependencies, formatting, linting, performance and more.

Frontend Masters sponsor

Introducing the React Foundation - At React Conf 2025 this week, it was announced that control of React and React Native is to be moved from Meta to an independent foundation supported by the Linux Foundation and initially backed by corporate members including Amazon, Expo, Meta, and Microsoft.

Webster, Carroll, Savona and Alpert

📺 If you'd like to catch up with React Conf, you can now watch the ▶️ day one and ▶️ day two livestream recordings on YouTube.

IN BRIEF:

RELEASES:

📖 Articles and Videos

The Birth of Prettier - The author takes us back ten years to the genesis of Prettier, the popular opinionated, deterministic code formatter he co-created with James Long. Prettier effectively introduced and popularized the practice of fully-automated AST-based code formatting in the JavaScript ecosystem.

Christopher Chedeau (Vjeux)

15 Recent Node.js Features That Can Replace Popular npm Packages - Many features that once required third-party packages are now built into the runtime itself.

Lizz Parody

⚡ Supercharge Postgres: 2PB Scale & 1.5T Metrics/Day - TigerData makes Postgres the fastest database for modern workloads: 2PB scale, 1.5T metrics/day, no black boxes.

TigerData sponsor

How to Group Arrays Without reduce() - A look at using Object.groupBy() and Map.groupBy()

Matt Smith

The History of Core Web Vitals - Addy tells the story behind Core Web Vitals, a popular set of metrics for measuring Web performance and its impact on user experience.

Addy Osmani

📄 How to Add Fast, Client-Side Search to Astro Static Sites - JavaScript to the rescue! Ivan Chepurin

📄 Shipping Node.js Packages in 2025 - A dense and helpful slidedeck from a talk given at last week's NordicJS event. Joyee Cheung

📄 How to Animate WebGL Shaders with GSAP: Ripples, Reveals, and Dynamic Blur Effects Andrea Biason

📄 Vue Basics: State Management in Vue David Adeneye Abiodun

🛠 Code & Tools

Viz.js 3.20: Work with Graphviz in the Browser - Graphviz is a suite of open source graph drawing tools of over 30 years' vintage. Viz.js is a WebAssembly Graphviz build that brings its functionality into the browser. GitHub repo.

Michael Daines

EmbedPDF: A PDF Viewer That Integrates with Any JavaScript Project - No dependencies, supports any framework, and has features like themes, annotations, redaction, search, smooth scrolling, and more - all available via a dev-friendly API. See the docs or try a live demo.

EmbedPDF

🎸 AI Agent Builder with All the Features, None of the Overhead - Shipping an agent-first web app? Use our template with all premium diagramming features and cut your dev time to days.

JOINTJS sponsor

The Coinbase Design System (CDS) React Components Library - The team behind Coinbase has open sourced its component library for React and React Native. There are lots of neat effects in the components, such as this 'rolling number' component.

Coinbase

Icebird: Read Apache Iceberg Tables in JavaScript - Iceberg is a high performance open-source format for large analytic tables.

Hyperparam

resolve-lexicon: Resolve AT Lexicons Over the Network - Lexicon is a schema definition language used in the AT Protocol world.

Dan Abramov

📰 Classifieds

HIRING NOW🕳️ 🥊: At Holepunch we maintain 2000+ OSS npm packages, make the JS runtime Bare to build the P2P Internet. Real tech, Real impact. Join us!

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

📢 Elsewhere in the ecosystem

A roundup of some other interesting stories in the broader landscape:

10 Oct 2025 12:00am GMT

03 Oct 2025

feedJavaScript Weekly

React 19.2 is in the building

#​755 - October 3, 2025

Read on the Web

JavaScript Weekly

The State of JavaScript 2025 Survey - Each year, Devographics runs an epic survey of as many JavaScript community members as it can and turns the results into an interesting report on the state of the ecosystem - here's the results from 2024. If you have the time, fill it in, especially as they format it in a way where you can actually learn about stuff as you go.

Devographics

React 19.2 Released - The third release in a year for React, this time introducing new features like <Activity /> (a way to hide and restore the UI and internal state of its children), useEffectEvent, and improvements to Chrome DevTools' performance profiles so you can see more about React's scheduling and the tree of components it's working with. Oh, and how about partial pre-rendering?

The React Team

Don't miss The AI Security Developers Challenge at DevSecCon on Oct 22, 2025 - Participate in the hands-on developer challenge workshop 💻at DevSecCon and get a chance to team up with industry experts from around the globe 🌎. Register for free and walk away with practical tips you can apply directly to your projects 🚀.

Snyk sponsor

IN BRIEF:

RELEASES:

📖 Articles and Videos

How Deno Protects Against npm Exploits - The maintainers of the Deno runtime reflect on the recent npm ecosystem security issues and show off how Deno's non-permissive explicit 'secure by default' model can help.

Andy Jiang

Cleaning House in Nx Monorepo: How I Removed 120 Unused Deps Safely - Another win (mostly) for Knip, a tool that helps you declutter projects by finding unused dependencies.

John James

Tests Are Dead. Meticulous Is Here - Meticulous automatically creates and maintains an E2E UI test suite with zero developer effort.

Meticulous sponsor

You Can Now Make PS2 Games in JavaScript - Last week we mentioned running JavaScript in MS-DOS but you can take it to Sony's Playstation 2 as well using a system built upon QuickJS.

JSLegendDev

How to Detect Safari and iOS Versions from JavaScript - Naturally, progressive enhancement is the best policy, but if you need to..

Evgeniy Valyaev

Mastering npx: A Cheatsheet for npm and Node Power Users - You've almost certainly used the npx command to easily run a command from an npm package (either local or remote) - it's easy to use, but npx has a couple of other features and options to keep in mind.

Liran Tal

📄 Why Next.js Falls Short on Software Engineering Harshal Patil

📄 @ts-ignore is Almost Always the Worst Option - Prefer any and @ts-expect-error, says the author. Evan Hahn

📄 I Want to Intercept Boolean Coercion for Objects in JavaScript Zach Leatherman

🛠 Code & Tools

qjs: Run JavaScript in Go using QuickJS and Wazero - A new Cgo-free JavaScript runtime option for integrating JavaScript into apps written in Go. It uses a fork of QuickJS that's compiled to WebAssembly and then run using Wazero.

Nguyen Ngoc Phuong and Contributors

💡 If you happen to be a Go developer, we have a sister newsletter for that!

Diagramming Library for the Enterprise? Use JointJS - Cut dev time 12x with JointJS, the most feature-rich diagramming library trusted by Fortune 100 companies.

JointJS sponsor

SpaceTime 7.11: A Lightweight Timezone Library - Use this to calculate times in other timezones. Has a Moment-like API but is immutable. No dependencies. GitHub repo.

Spencer Kelly

Jeasx: A Lightweight SSR Framework That Uses JSX - A server side rendering framework built on top of JSX and Fastify. It doesn't use React, but if you want to keep using JSX while keeping your server side lightweight, it's an option. The JSX functionality is provided by the author's jsx-async-runtime package. v1.9 was just released.

Maik Jablonski

📊 Vue ECharts 8.0: Vue.js Component for Apache ECharts - Apache ECharts is a popular, powerful JavaScript charting library we've linked many times and this project makes it easier to use in Vue.js apps. v8.0 upgrades to ECharts 6.0. GitHub repo.

GU Yiling and ECOMFE

modern-tar: Zero-Dependency Streaming tar Parser and Writer - As in the classic tar archive format.

Ayuhito

📰 Classifieds

🚀 FastCI: How to double the speed of your Continuous Integration with a 2-minute setup.

At Holepunch we maintain 2000+ OSS npm packages, make the JS runtime Bare to build the P2P Internet. Real tech, Real impact. Join us!

🕰 ICYMI (Some older stuff that may catch your eye...)

🛣️ Sean C Davis runs through strategies for managing routes in JavaScript projects - good, practical advice for establishing a consistent workflow and improve overall maintainability.

🦆 Remember Duck Hunt for the NES? Well, ▶️ here's a lengthy video looking at how to recreate it in TypeScript.

🛠️ Chizaram Ken runs through a handful of reasons why your Next.js app may be slow, along with some possible fixes.

😗 And a weird note to end on..

Have you ever wanted to program by whistling? Now you can. Velato is a JavaScript-inspired esoteric language designed to be written entirely by whistling and you can give it a go in your browser right now. I struggled with it, but you might have more luck (it doesn't seem to like Safari, for starters).

Velato was built by Daniel Temkin, the author of Forty-Four Esolangs, a new book, published by MIT Press, about an artist's take on creating esoteric programming languages.

03 Oct 2025 12:00am GMT

26 Sep 2025

feedJavaScript Weekly

The first browser with JavaScript landed 30 years ago

#​754 - September 26, 2025

Read on the Web

JavaScript Weekly

Give Your AI Eyes: Introducing Chrome DevTools MCP - The Chrome team has released an MCP server for Chrome DevTools, enabling agents like Claude Code or OpenAI Codex to use the DevTools to debug and analyze the performance and behavior of your webapps (or even just to automate the use of Chrome generally). Addy does a great job of explaining the potential here.

Addy Osmani

AI Code Reviews Meet CLI Coding Agents - CodeRabbit CLI brings instant code reviews directly to your terminal, integrating with Claude Code, Cursor CLI, and other AI agents. While they generate code, CodeRabbit ensures it's production-ready - catching bugs, security issues, and hallucinations before they hit your codebase.

CodeRabbit sponsor

GitHub's Plan for a More Secure npm Supply Chain - In direct response to the recent npm ecosystem supply chain attacks of recent weeks, GitHub's senior director of security research has outlined steps GitHub is taking, including blocking the upload of packages featuring the patterns of the recent malware, hardening package publication, and promoting the use of trusted publishing.

Xavier René-Corail (GitHub)

IN BRIEF:

RELEASES:

📖 Articles and Videos

From Steam to Floppy: Porting Modern TypeScript to Run on DOS - The creator of a DOS-inspired programming game (available on Steam) wanted to try and get the game running on real DOS. Thanks to jSH, a JavaScript engine for DOS, it was kinda do-able.

Jimbly / Dashing Strike

NPM Security Best Practices - An extensive list of best practices, techniques, and ideas to consider for making your use of the npm packaging ecosystem and its tooling more secure.

Boda

Implementing Authentication and Session Management in Next.js - Learn how to integrate user sign-up, sign-in, and protected routes into your Next.js app with modern auth practices.

Clerk sponsor

JSON is Not JSON Across Languages - If you use JSON to communicate between systems built in different languages, beware. Different libraries with varying opinions can cause "some of the most soul-crushing debugging experiences in software development."

Dochia CLI

📄 Stop Using .reverse().find(): Meet findLast() Matt Smith

📄 Storing Unwise Amounts of Data in JavaScript BigInts Jonathan Frere

🎤 Making Desktop Frameworks More Accessible with Electron - A 20 minute chat with a long-time Electron maintainer. The GitHub Podcast

📄 Create 'Sick' Web Animations in Three.js with GSAP - A very simple example. Michael Li

📄 How to Test the New ARIA Notify API with Cypress Mark Noonan

🛠 Code & Tools

🤖 GitHub Copilot CLI Now in Public Preview - Not content to let Claude Code and OpenAI Codex dominate the CLI-based dev agent scene, GitHub has released a CLI-based version of Copilot, built using Node.

GitHub

TanStack Start v1 Release Candidate - TanStack's attempt at a full-stack TanStack Router-powered framework has reached a v1.0 release candidate that's expected to be largely the same as its eventual 1.0 release. "It's the next chapter in building type-safe, high-performance React apps without the heavy abstractions."

Tanner Linsley

Roles Get Messy Fast. WorkOS RBAC Keeps Access in Check - Define roles, group permissions, and sync with SSO and SCIM. Manage access with clean APIs and a powerful dashboard.

WorkOS sponsor

Cap'n Web: A New RPC System for Browsers and Web Servers - A 'spiritual sibling' to Cap'n Proto, an RPC protocol created by one of the same authors. However, Cap'n Web's underlying serialization is human-readable, focused on integrating well with JS runtimes, and works over HTTP, WebSocket, and postMessage() out-of-the-box.

Varda and Faulkner (Cloudflare)

eslint-plugin-react-you-might-not-need-an-effect - What a project name! It's an ESLint plugin to help React developers catch unnecessary useEffects which are quite commonly overused.

Nick van Dyke

  • 📊 Billboard.js 3.17.0 (above) - The popular charting library adds image label support for charts, label border styling, and dynamic control of label colors.

  • PythonMonkey 1.3 - Embed the SpiderMonkey JS engine into Python's VM. Now with Python 3.14 support.

  • pretty-bytes 7.1 - Convert a size in bytes into a human readable equivalent (e.g. 1337 becomes '1.34 kB').

  • Docusaurus 3.9 - The popular React + MDX-powered content/docs site generator.

  • Neo.mjs 10.9 - Multi-threaded framework for fast, desktop-like webapps.

  • eslint-plugin-vue 10.5 - Official ESLint plugin for Vue.js. (Homepage.)

  • VanJS 1.6 - The small but sweet reactive UI framework. (Homepage.)

  • Milkdown 7.16 - Plugin-driven WYSIWYG Markdown editor framework.

📰 Classifieds

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

🚀 Next week: JetBrains JavaScript Day 2025! A free online event full of talks & live Q&A with experts from the JS community. Don't miss it!

🧐 Learning web development with Dr. Axel

Over the past couple of months the esteemed Dr. Axel Rauschmayer has been working on a valuable series of beginner-friendly posts on a range of web development topics, with a heavy focus on JavaScript. He pitches the series as a way to teach people "who have never programmed how to create web apps with JavaScript".

These are all excellent primers/refreshers, and ideal for sharing with those early in their web development journey. Here are some of the highlights so far:

P.S. Don't go JSON waterfalls..

26 Sep 2025 12:00am GMT

19 Sep 2025

feedJavaScript Weekly

The attack on the npm ecosystem continues

#​753 - September 19, 2025

Read on the Web

JavaScript Weekly

The 'Shai-Hulud' npm Supply Chain Attack Rumbles On - Now named after a term for the sandworms of the Dune universe, the ongoing malicious supply chain attack affecting the npm ecosystem has grown in scale with hundreds of packages affected in an attempt to exfiltrate tokens and secrets from developers' machines.

Pandya, van der Zee, and Brown (Socket)

The story above has triggered a wave of responses and mitigations:

FlexGrid by Wijmo: The Industry-Leading JavaScript Datagrid - A fast and flexible DataGrid for building modern web apps. Key features and virtualized rendering are included in the core grid module. Pick & choose special features to keep your app small. Built for JavaScript, extended to Angular, React, and Vue.

Wijmo From MESCIUS sponsor

⚖️ Deno Asks: 'Help Us Raise $200k to Free JavaScript from Oracle' - The term JavaScript(™) is actually an Oracle trademark, but Ryan Dahl and Deno are attempting to fight that and are raising funds to get through the all-important discovery phase of the cancellation petition.

Ryan Dahl (Deno)

IN BRIEF:

RELEASES:

  • Safari 26.0 has been released alongside macOS 26.0, iOS 26.0, etc. Along with numerous CSS enhancements and a new <model> element for embedding 3D models onto web pages, every site can now "be a web app" on iOS and iPadOS if a user adds it to their home screen.

  • Bun v1.2.22 - Stack traces now include asynchronous call frames, there's Bun.YAML.stringify to turn objects into YAML, bundler & minifier improvements, and more.

  • As of React Router 7.9.0, the long-awaited middleware feature is now stable.

📖 Articles

Fetch Streams are Great, But Not for Measuring Upload/Download Progress - Fetch upload streams seem well-suited for tracking the progress of uploads, but as Jake notes "just because stuff is taken from the stream doesn't mean it's yet been sent over the network". He also touches on an issue relating to measuring download progress using response streams.

Jake Archibald

Moving Off of TypeScript (We Love You, TypeScript) - An interesting tale from an engineering team that has decided to throw in the towel on its 2.5 million lines of TypeScript, instead migrating to .NET and C#. React will remain on their frontend, however.

Chander Ramesh

Secure Your Agentic Apps with Auth for GenAI - Secure your agentic apps with features like User Authentication for AI agents, Token Vault, and more with Auth0's Auth for GenAI (exclusively in Developer Preview).

Auth0 sponsor

'React Won by Default - And It's Killing Frontend Innovation' - An opinionated React thought-piece that's provoked much discussion this week by poking at the downsides and inertia caused by 'the React-by-default mindset.'

Loren Stewart

📄 Beyond The Horizon: How Angular is Embracing AI for Next-Gen Apps - An update direct from the Angular team. Simona Cotin (Angular)

📄 Solid.js vs. React: A Developer's Perspective - "Solid has been a breath of fresh air and it has opened my eyes to what React could be, but probably never will be." Alem Tuzlak

📄 Creating an Immersive 3D Weather Visualization with React Three Fiber Carter Rink

🛠 Code & Tools

npm-check-updates 18.2: Update package.json Dependencies to Latest Versions - That is, as opposed to the specified versions. Includes a handy -i interactive mode so you can look at potential upgrades and then opt in to them one by one. v18.2 adds a 'cooldown' feature to help protect against supply chain attacks by requiring package versions to be published at least the given number of days before considering them for upgrade.

Raine Revere

Expo SDK 54 Released: A Big One for React Native Developers - The Expo framework continues its rapid ascent in the world of React Native with precompiled React Native iOS builds (for much shorter build times), iOS 26 and Liquid Glass support, and the use of React Native 0.81 and React 19.1. The new Expo File System has also become stable.

Hughes and Vatne (Expo)

Ready to Increase Your Conversions? Get Started with Free Trials - Free Trials are now available through Clerk Billing. Stop building trial logic, cancellation flows, and upgrade paths.

Clerk sponsor

🦋 BlueSky Likes: Flexible Components for Displaying Bluesky Likes - Includes two custom element components: bluesky-likes and bluesky-likers to display the number of likes and a group of avatars of those who liked a post respectively. Live demo.

Lea Verou

Svedit: A Tiny Library for Building Rich Content Editors with Svelte - Enables you to model your content in JSON, render it with custom Svelte components, and edit directly in the layout. GitHub repo.

Michael Aufreiter

  • TypeBox 1.0 - A runtime type system that creates in-memory JSON Schema objects that infer as TypeScript types.

  • 🙂 Vue Frimousse v0.1.3 - Unstyled, composable emoji picker for Vue.

  • wait-on 9.0 - CLI utility and Node API to wait for files, ports, sockets, and http(s) resources to become available.

  • 🗓️ DayPicker 9.10 - React component for creating date pickers, calendars, and date inputs.

  • Wasp 0.18 - Wasp is a Rails-like framework using Node, React & Prisma.

  • pretty-ms 9.3 - Convert milliseconds to a human readable string.

  • npm-publish 4.0 - GitHub Action to publish packages to npm.

  • Hexo 8.0 - Popular blog framework/ generator.

  • Fresh 2.1 - Deno-powered Web framework.

📰 Classifieds

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

Go beyond caching. Redis 8.2 handles 5x more data with 150 new commands and 8 new data structures vs 7.2. Get started today.

JetBrains JavaScript Day 2025 brings insights from experts like Ryan Carniato, Kent C. Dodds, and more. Free & online - tune in on Oct 2!

🎁 Some Bonus Items

19 Sep 2025 12:00am GMT

11 Aug 2025

feedOfficial jQuery Blog

jQuery 4.0.0 Release Candidate 1

It's here! Almost. jQuery 4.0.0-rc.1 is now available. It's our way of saying, "we think this is ready; now poke it with many sticks". If nothing is found that requires a second release candidate, jQuery 4.0.0 final will follow. Please try out this release and let us know if you encounter any issues. A 4.0 … Continue reading

11 Aug 2025 5:35pm GMT

17 Jul 2024

feedOfficial jQuery Blog

Second Beta of jQuery 4.0.0

Last February, we released the first beta of jQuery 4.0.0. We're now ready to release a second, and we expect a release candidate to come soon™. This release comes with a major rewrite to jQuery's testing infrastructure, which removed all deprecated or under-supported dependencies. But the main change that warranted a second beta was a … Continue reading

17 Jul 2024 2:03pm GMT

17 Apr 2024

feedOfficial jQuery Blog

Upgrading jQuery: Working Towards a Healthy Web

jQuery's influence on the web will always be evident. When it was first introduced in 2006, jQuery became a fundamental tool for web developers almost immediately. It simplified JavaScript programming, making it easier to manipulate HTML documents, handle events, perform animations, and much more. Since then, it has played and continues to play a major … Continue reading

17 Apr 2024 5:00pm GMT

06 Feb 2024

feedOfficial jQuery Blog

jQuery 4.0.0 BETA!

jQuery 4.0.0 has been in the works for a long time, but it is now ready for a beta release! There's a lot to cover, and the team is excited to see it released. We've got bug fixes, performance improvements, and some breaking changes. We removed support for IE<11 after all! Still, we expect disruption … Continue reading

06 Feb 2024 4:43pm GMT

28 Aug 2023

feedOfficial jQuery Blog

jQuery 3.7.1 Released: Reliable Table Row Dimensions

jQuery 3.7.1 has been released! This release fixes a regression from jQuery 3.6.0 that resulted in rounded dimensions for <tr /> elements in Chrome and Safari. Also, a (mostly) internal Sizzle method, jQuery.find.tokenize that was on the jQuery object was accidentally removed when we removed Sizzle in jQuery 3.7.0. That method has been restored. As … Continue reading

28 Aug 2023 1:40pm GMT

11 May 2023

feedOfficial jQuery Blog

jQuery 3.7.0 Released: Staying in Order

jQuery 3.7.0 is now available! This release has it all: bug fixes, a new method, and a performance improvement! We even dropped our longtime selector engine: Sizzle. Or, I should say, we moved it into jQuery. jQuery no longer depends on Sizzle as a separate project, but has instead dropped its code directly into jQuery … Continue reading

11 May 2023 6:38pm GMT

08 Mar 2023

feedOfficial jQuery Blog

jQuery 3.6.4 Released: Selector Forgiveness

If you've been following along with recent jQuery releases, we have been working on how to address the recent addition of some new selectors in browsers, especially :has. jQuery 3.6.3 settled on the strategy of using native CSS.supports to determined whether a selector should be passed directly to querySelectorAll or instead go through jQuery's selector … Continue reading

08 Mar 2023 3:52pm GMT

20 Dec 2022

feedOfficial jQuery Blog

jQuery 3.6.3 Released: A Quick Selector Fix

Last week, we released jQuery 3.6.2. There were several changes in that release, but the most important one addressed an issue with some new selectors introduced in most browsers, like :has(). We wanted to release jQuery 3.6.3 quickly because an issue was reported that revealed a problem with our original fix. More details on that … Continue reading

20 Dec 2022 9:35pm GMT

13 Dec 2022

feedOfficial jQuery Blog

jQuery 3.6.2 Released!

You probably weren't expecting another release so soon, but jQuery 3.6.2 has arrived! The main impetus for this release was the introduction of some new selectors in Chrome. More on that below. As usual, the release is available on our cdn and the npm package manager. Other third party CDNs will probably have it soon … Continue reading

13 Dec 2022 3:13pm GMT

26 Aug 2022

feedOfficial jQuery Blog

jQuery 3.6.1 Maintenance Release

jQuery 3.6.1 has been released! It's been a while since our previous release. We were looking at fixing some elusive edge cases related to focus and blur, but we never quite got the fix right. If there's any area of jQuery that's hard to change, it's likely related to focus somehow. We're leaving those as-is … Continue reading

26 Aug 2022 5:55pm GMT