25 Apr 2025

feedJavaScript Weekly

Bring back the fun with p5.js 2.0

#​733 - April 25, 2025

Read on the Web

JavaScript Weekly

p5.js 2.0: The JavaScript Library for Creative Coding - A popular Processing-inspired creative coding library that makes it easy to create interactive, visual experiences (examples). v2.0 improves its font support, adds more ways to draw and manipulate text, adds a way to write shaders in JavaScript, and much more. p5.js 2.0: You Are Here has more details on the release and where the project is headed next.

p5.js Team

πŸ’‘ p5.js is simultaneously useful and fun. It provides a great abstraction for interactive, visual experiences and is easy to play with using its online editor. A pastime of mine is asking AI models to create demos. For example, load this p5.js sketch and hit play to see a JS logo glitch experiment OpenAI's o3 just made for me.

Unbork Your Laravel App (Live) - Laravel is so in right now. Join us for a hands-on debugging session using a demo app, Unborked. We'll track errors, replay sessions, trace slowdowns, and maybe even let the robots help. Bring your bugs.

Sentry sponsor

Big Updates in the React World - You know it's been a big week in the React world when the React Compiler hitting Release Candidate is the second most important story. In this latest React Labs post, we learn about two new features ready to try out today in react@experimental: View Transitions and the <Activity> component.

Ricky Hanlon

IN BRIEF:

RELEASES:

πŸ“– Articles

Creating a 3D Split-Flap Display with JavaScript - A split-flap display is a electro-mechanical display commonly associated with live timetable displays and it makes for a neat effect on the Web too. Jhey breaks down how to replicate it, or you can hit up this live demo.

Jhey Tompkins

Impossible Components - Dan Abramov digs into the idea of so-called 'impossible' components that mix server-only and client-only features and how React Server Components can help bridge the divide, culminating in an example you can experiment with for yourself.

Dan Abramov

How to Build a Multi-Tenant App Using Clerk + Supabase - Clerk and Supabase empower you to build B2B apps with only a few small changes to your codebase. Learn how in this guide.

Clerk sponsor

Optimizing Node Performance with V8 GC Optimization - Matteo recently ▢️ gave a talk about Node's memory usage and has written it up into this blog post. He notes that high memory usage doesn't necessarily mean you have a memory leak, explains how V8's garbage collection works, and how to tune things for your own use case.

Matteo Collina

Abusing DuckDB-WASM by Making SQL Draw 3D Graphics (Sort Of) - Oh, this is a fun experiment. DuckDB is a small and powerful in-process SQL database (think SQLite but for analytical tasks) and has a native WebAssembly build. Couple that with some JavaScript, and you too could do some rather bizarre things..

Patrick Trainer

πŸ’‘ Lest you think this is just a fun item, you could use the techniques learnt here to integrate DuckDB more seriously into other Web projects.

πŸ“„ A Decade of Impact: How Our npm Packages Hit 1 Billion Downloads and Shaped JavaScript - A bold title for sure, but with a neat story behind it. Forward Email

πŸ“„ Float16Array in JavaScript - Understanding the 16-bit floating point array type. Trevor I. Lasn

πŸ“„ When to Use map() vs. forEach() Matt Smith

πŸ“„ Zero-Config Debugging with Deno and OpenTelemetry Casonato and Jiang (Deno)

πŸ›  Code & Tools

JavaScript Font Picker - A surprisingly featureful control for letting users pick fonts from a range of system fonts, Google fonts, and custom fonts of your choice. You can play with a code demo here or go to the GitHub repo.

Zygomatic

🎨 The folks behind this project have also built JS Color Picker.

Scala.js 1.19.0: A Way to Bring Scala and JavaScript Together - Scala is a powerful language that never quite seemed to make it big to me, but it has a devoted fanbase and has grown beyond its JVM roots to also have JavaScript and native runtimes. Scala.js is a Scala to JavaScript compiler and the homepage has some neat code and feature comparisons.

Scala.js Team

Penpot Launches Native Design Tokens! - Simplify your design & code collaboration with Penpot design tokens: the key to consistency and scalability.

Penpot sponsor

Spectacle: Create Sleek React-Powered Presentations - A React-based library for creating sleek presentations using JSX syntax that gives you the ability to live demo your code, add interactive elements, scrollable code blocks, graphics effects, and more.

Nearform

Frimousse: A Lightweight, Unstyled, and Composable Emoji Picker for React - The picker is accessible and won't display any emojis that aren't supported on the device. You can explore some demos here.

liveblocks

πŸ“° Classifieds

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

βœ‰οΈ FYI: We publish two other JavaScript related newsletters if you work with Node.js or React: Node Weekly and React Status.

πŸ“’ Elsewhere

A quick roundup of other interesting updates and useful resources from across the broader developer landscape:

25 Apr 2025 12:00am GMT

18 Apr 2025

feedJavaScript Weekly

TC39: No to records and tuples, yes to enums

#​732 - April 18, 2025

Read on the Web

πŸ₯š A Good Friday, if you celebrate Easter at all. We're taking a little break but didn't want to take the entire week off, so we have a slimline issue for you today :-) We'll be back to full service next Friday!
__
Peter Cooper, your editor

JavaScript Weekly

The ECMAScript Records and Tuples Proposal Has Been Withdrawn - Several years in the making, the record and tuples proposal offered two new deeply immutable data structures to JavaScript, but at this week's TC39 meeting, the consensus was to drop it.

There have, however, been some more positive updates:

It's worth following Rob Palmer if you want to keep up to date with TC39 goings-on as he's always sharing the latest news.

Plug & Play Image Editor For Your Web App - Save yourself the headache of building an image editor. Import the pintura module, give it an image source, and instantly get features like cropping, rotating, resizing, and annotation. Need help? Support has you covered. Try it for free today.

Pintura sponsor

Hako: A New High-Performance Embeddable JavaScript Engine - A fork of PrimJS (which is, itself, built on top of QuickJS) that compiles down to WebAssembly and can act as a portable, embeddable JavaScript engine for other apps (here's an example of using it in a Go app).

Andrew Sampson

IN BRIEF:

RELEASES:

  • Astro 5.7 - The popular content framework gains an experimental fonts API, its sessions API is now stable, and there's support for using local SVG files as components.

  • WebStorm 2025.1 - JetBrains' JavaScript IDE - fresh with big AI, Angular, monorepo, and Next.js enhancements.

  • tldts 7.0 - URL parsing library to extract domains, subdomains, suffixes, etc.

  • gridstack.js 12.0 - Build responsive interactive dashboards quickly.

  • Lexe - Package a Node app into a single, small executable.

  • DOCX 9.4 - Generate Word documents from JavaScript.

  • Redux Toolkit 2.7, Bun v1.2.10, Babylon.js 8.3, Rambda 10.0

πŸ“– Articles and Videos

A Flowing WebGL Gradient, Deconstructed - Even if you don't want to render a neat plasma-style effect on the Web, this is a wonderfully deep exploration of the math and technology behind doing so using simple GLSL code that could be easily understood by any JavaScript developer.

Alex Harri

πŸ’‘ If you like stuff like this, this CodePen of a GLSL-based swirl effect is neat too.

Advanced React in the Wild - A round-up of case studies showing how five different engineering teams have pushed React to the limit in production and their real-world wins in areas like performance, Core Web Vitals, caching, and more. A lot to enjoy here.

Addy Osmani and Hassan Djirdeh

πŸ“Ί Building Single Page Apps with SvelteKit - And not only that, you can create SvelteKit apps in a single HTML file that can run without a Web server. (15 minutes) Stanislav Khromov

πŸ“„ How I Track My Blog's Analytics with Val Town Orestis Papadopoulos

πŸ“„ Deploying TypeScript: Recent Advances and Possible Future Directions Dr. Axel Rauschmayer

πŸ“„ Zero-Config Debugging with Deno and OpenTelemetry Casonato and Jiang (Deno)

πŸ“„ Creating an AI Chat Experience with React and OpenAI Robin Wieruch

18 Apr 2025 12:00am GMT

11 Apr 2025

feedJavaScript Weekly

Comparing Tauri and Electron

#​731 - April 11, 2025

Read on the Web

JavaScript Weekly

πŸ€– Firebase Studio: Google's New Agentic AI-Powered Development Environment - Buzzing from the success of Gemini 2.5 Pro for dev tasks, Google's Firebase team gets in on the AI development action with a Cursor/v0/Lovable-a-like of its own for building apps in the browser.

Google

Some Features Every JavaScript Developer Should Know in 2025 - A quick list post breezing through a few more modern areas of JavaScript including iterator helpers, structuredClone(), and set operations.

Suren Enfiajyan

Next.js Fundamentals, v4 - Master Next.js with Scott Moss. Learn React Server Components, Server Actions, dynamic routing, authentication, caching, and edge functions. Create a modern React app, deploy it to Vercel, and level up your skills.

Frontend Masters sponsor

Node.js Testing Best Practices - A detailed guide to modern testing in Node from a group of developers who know all about it. It's on GitHub, but essentially written like a free book covering over 50 battle-tested tips covering areas as diverse as the 'Testing Diamond', testing microservices, and simulating flaky networks.

Goldberg, Salomon, and Gluskin

IN BRIEF:

RELEASES:

πŸ“’ Articles & Tutorials

Comparing Tauri and Electron for Building Desktop Apps - Electron is a natural choice for building JS and HTML-powered cross-platform desktop apps but numerous alternatives have appeared like Neutralinojs and the Rust-based Tauri. This post does a good job of quickly showing how Tauri differs and why you might choose it.

Costa Alexoglou

Mastering Default Values with Nullish Coalescing (??) - Matt's a big fan of the ?? operator over the || approach, largely due to JavaScript's ideas of what it considers 'falsy'.

Matt Smith

How Clerk Integrates with a Next.js Application Using Supabase - Learn how Supabase + Clerk work with Next.js to increase security and reduce development hours.

Clerk sponsor

Accelerating Large-Scale Test Migration with LLMs - How Airbnb completed its first large-scale, LLM-driven code migration in moving from Enzyme to React Testing Library.

Charles Covey-Brandt (Airbnb)

React Reconciliation: The Hidden Engine Behind Your Components - React uses a reconciliation algorithm to update the DOM based on changes to the virtual DOM. Understanding how it works is essential for producing faster apps.

Christian Ekrem

Hiding Elements That Require JavaScript Without Using JavaScript - If you've got non-essential features that require JavaScript and you want to hide them for users who have JavaScript disabled for whatever reason, this is a tidy old-school way to do it.

Dade

πŸ“„ Debugging JavaScript Memory Leaks in Bun Jarred Sumner

πŸ“„ Using Chrome's (Preview) Prompt API for Data Summarization Raymond Camden

πŸ“„ How to Easily Reproduce a Flaky Test in Playwright Nicolas Charpentier

πŸ“„ Securing a Vue App with OpenID Connect and the BFF Pattern - That's Backend-for-Frontend, not Best Friends Forever. Khalid Abuhakmeh

πŸ“„ The Case for Web Components with Lit Philipp Kunz

πŸ›  Code & Tools

Next.js 15.3: Now Including Turbopack Builds - The popular React framework now includes alpha support for using Turbopack for much faster production builds (especially if you have lots of cores available), community support for Rspack, and new navigation hooks.

The Vercel / Next.js Team

Chrono 2.8: A Natural Language Date Parser - Give it a string like "today", "last Friday", "2 weeks from now", or even an entire date and time, and it'll come up with a date object to suit.

Wanasit Tanakitrungruang

Breakpoints and console.log Is the Past, Time Travel Is the Future - 15x faster JavaScript debugging than with breakpoints and console.log, supports Vitest, Jest, Karma, Jasmine, and more.

Wallaby Team sponsor

🎡 Communicate with Ableton Live via WebSockets - Ableton Live is a popular DAW (digital audio workstation) and this opens up a way to control it from JavaScript.

Ricardo Matias

πŸ“° Classifieds

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

Working on the frontend? πŸš€ Frontend Focus is a weekly update - trusted by 75,000+ devs - covering the essential trends, tools and tips that matter.

πŸ“’ Elsewhere

A quick roundup of other interesting updates and useful resources from across the broader developer landscape:

11 Apr 2025 12:00am GMT

04 Apr 2025

feedJavaScript Weekly

The JavaScript trademark fight rumbles on

#​730 - April 4, 2025

Read on the Web

JavaScript Weekly

Bare: A New Lightweight Runtime for Modular JS Apps - Imagine something like Node.js but really stripped back: bare, if you will. Like Node, it's built on top of V8 and libuv (though it's designed to support multiple JavaScript engines) but Bare's approach is to provide as little as possible (a module system, addon system, and thread support) and then rely upon userland modules that can evolve independently of Bare itself. It's an interesting idea - more details here.

Holepunch

An Update on the Deno v Oracle JavaScriptβ„’ Fight - Deno filed a petition with the USPTO to cancel the 'JavaScript' trademark, as claimed by Oracle, and Oracle stepped up to fight back. Ryan recaps the basic story and asks for help to get the word out (signing the open letter is a great start, if you agree Oracle abandoned the trademark).

Ryan Dahl

AG Grid: The Best JavaScript Data Grid In The World - Create high-performance data grids with our open-source library, trusted by 90% of the Fortune 500. Add advanced features like Integrated Charting, Grouping, Pivoting and more with a few lines of code. Supports React, Angular and Vue. Try for free.

AG Grid sponsor

React 19.1 Released - The headline feature is Owner Stacks, a dev-only feature to track which components are responsible for rendering other components. 19.1 also brings fixes, small additions (like support for streaming in edge environments), a new API for prerendering RSCs on the server, and enhanced Suspense support.

Matt Carroll (Facebook)

IN BRIEF:

RELEASES:

πŸ“’ Articles & Tutorials

Exploring Art with TypeScript, Jupyter, Polars, and Observable Plot - One of Deno's compelling features is its support for Jupyter Notebooks and easy notebook-style programming, such as is common in the Python world. Trevor looks at a practical use of using such a notebook environment for data exploration.

Trevor Manz

Could JavaScript Have Synchronous await? - Dr. Axel reflects on the problems around async code being different to synchronous code and ways around the limitations faced. What could the consequences of a synchronous await be?

Dr. Axel Rauschmayer

Hands-On Debugging Session: Instrument, Monitor, and Fix - Build it, break it, debug it, and fix it - with Sentry. See how to get set up, track errors, use Session Replay and the new Trace Explorer, plus leverage AI to find and fix issues fast.

Sentry sponsor

JavaScript's Missing Link? Wasp Offers a Full Stack Solution - A look at what the Wasp team is trying to do building a full-stack webapp framework around React, Node, and Prisma. It's a powerful option if you're looking for a more traditional-feeling full-stack approach.

Loraine Lawson (The New Stack)

πŸš‚ How a Steam Locomotive from 1993 Broke My Yarn Test - A fun bug hunting tale that actually delivers on its title. Yew Leong

πŸ“„ Breaking Down Circular Dependencies in JavaScript Bryan Braun

πŸ“„ Automated Visual Regression Testing with Playwright Frederik Dohr

πŸ“„ Lessons Learned From My First Dive Into WebAssembly Chris Wellons

πŸ›  Code & Tools

Anime.js 4.0: A JS Animation Library for the Web - If you're tired of Web animations, maybe Anime.js will refresh your appetite. This is a major upgrade to a mature library for animating CSS properties, SVGs, the DOM, and JS objects. It's smooth, well-built, and now complete with fresh documentation.

Julian Garner

Learn How to Integrate Clerk with Lovable - Lovable integrates Clerk for custom domains, streamlined auth flows, and waitlist-powered onboarding.

Clerk sponsor

Milkdown 7.7: WYSIWYG Markdown Editor Framework - A WYSIWYG Markdown editor framework based around a plugin system that enables a high level of customization. The docs are rendered by Milkdown itself. GitHub repo.

Mirone

TinyBase v6.0: A Reactive Data Store for Local-First Apps - We're huge fans of this powerful reactive data store that can be used as the entire backend for many types of app. v6.0 adds no new functionality but brings React 19 support and goes ESM-only. Check out the homepage for more.

James Pearce

πŸ“° Classifieds

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

βœ‰οΈ Don't forget we have two other JavaScript related newsletters if you work with Node.js or React: Node Weekly and React Status respectively.

πŸ“’ Elsewhere

A quick roundup of other interesting updates and useful resources from across the broader developer landscape:

04 Apr 2025 12:00am 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

07 Oct 2021

feedOfficial jQuery Blog

jQuery maintainers continue modernization initiative with deprecation of jQuery Mobile

By: Michal Golebiowski-Owczarek, Felix Nagel, and the jQuery team Editor's Note: the following blog post was originally published to the OpenJS Foundation Blog. jQuery maintainers are continuing to modernize its overall project that still is one of the most widely deployed JavaScript libraries today. The team announced that the cross-platform jQuery Mobile project under its … Continue reading β†’

07 Oct 2021 3:22pm GMT