Plus hacking cars with JavaScript, running WebAssembly in JS apps, and the OpenJS Foundation recognizes some JavaScript heroes. |

#​712 — November 7, 2024

Read on the Web

Together with  Handsontable

JavaScript Weekly

JavaScript's ??= Operator: Default Values Made Simple — The ??= nullish coalescing assignment operator snuck into JavaScript a few years ago via ECMAScript 2021 and has been broadly supported almost everywhere for ages. Trevor shows off how it can tighten up your assignments here.

Trevor I. Lasn

💡 He also took a similar look at the pipeline operator |>, but this feature is still only in draft as a proposal.

🇺🇸 JSConf is Back; Here's the Details — Two months ago, the OpenJS Foundation announced that the popular JSConf brand was joining the foundation and a new North American JSConf event would happen in due course. Now you can mark your calendars for October 14-16, 2025 for an event taking place in the Chesapeake Bay area of Maryland, USA.

OpenJS Foundation

Handsontable: A Powerful Data Grid for Internal Apps — Speed up the development of your React app with a feature-rich data grid - sorting, filtering, multiple cell types, built-in formulas, CRUD operations, and an extensive API. Come visit our booth at React Summit US on Nov 19th to see it in action!

Handsontable sponsor

Announcing Rspack 1.1Rspack is a fast, Rust-powered alternative to Webpack but with the same API. v1.1 boasts being 10% faster than v1.0 and has an improved, though still experimental, incremental build feature. If super fast build times are your bag, this needs to be on your radar.

The Rspack Team

IN BRIEF:

RELEASES:

📒 Articles & Tutorials

Wasmer Adds Node.js and Bun SupportWasmer is a Rust-powered WebAssembly runtime and Wasmer 5.0 adds V8 and JavaScriptCore backend support, meaning you can try all sorts of things like, say, running Clang, Python, or even compiled JavaScript apps inside your own JavaScript app..

Syrus Akbary

Why Would Anyone Need Generator Functions? — A golden oldie that I enjoyed revisiting because it covers an oft misunderstood and not particularly commonly encountered JavaScript feature.

James Sinclair

Breakpoints and console.log Is the Past, Time Travel Is the Future — Next-level testing in any editor, 15x faster with Interactive Time Travel Debugger, real-time insights & advanced coverage in a new UI.

Wallaby Team sponsor

The Most Effective Ways to Improve Core Web Vitals — Everyone wants their site to be as performant as possible, especially when Google factors performance into its rankings, but how? Google shares a variety of practical techniques to improve your INP, LCP, and CLS metrics here.

Google

Why Code Security Matters - Even in Hardened Environments — A well diagrammed dive into a technique that allows malicious parties to turn a file write vulnerability in a Node.js app into a remote code execution exploit even when the file system is read-only.

Stefan Schiller (Sonar)

Generating Random Mazes with JavaScript — A fun, well-presented walkthrough of a basic maze generation process.

Paul Hebert

Along similarly fun lines is Chris MMO's Generating Lever-Door Puzzles.

MongoDB Helps Devs Build Better AI Agents with LangChain & Hybrid Search — It’s easier than ever to build AI agents with LangChain, perform hybrid search and ingest large-scale documents.

MongoDB sponsor

🚗 Hacking Cars in JavaScript – Or “Running Replay Attacks in the Browser with the HackRF.” Charlie Gerard

📄 How Bun Supports V8 APIs Without Using V8 (Part 2) Ben Grant (Bun)

📄 How to Create an Organic Text Distortion Effect with Infinite Scrolling – There's a live demo of the striking, though disorienting, effect. Jorge Toloza

📄 Vercel Makes Changes to Next.js to Simplify Self-Hosting Loraine Lawson (The New Stack)

📄 The Latest in Angular Change Detection – All You Need to Know Krzysztof Skorupka

🛠 Code & Tools

npmpackage.info: Detailed Package Info on a Single Page — Give this online tool the name of an npm package and you get a quick ‘dashboard’ style view of the project’s main statistics, covering areas like quality scores, commits, open issues, releases, bundle size, and more.

Shrinath Nayak

📊 NPM Chart is another cool new site focused on showing npm package download stats.

Prompt, Run, Edit, and Deploy Full-Stack Web Apps with bolt.new — StackBlitz recently released an in-browser AI web development agent: bolt.new! Give it a try today.

StackBlitz sponsor

Docusaurus 3.6: The Docs-Oriented Static Site Generator — Meta’s Docusaurus is a popular way to build docs sites (like these). v3.6 is focused on performance, now using tools like Rspack and SWC to make builds super fast.

Meta

Immutable.js 5.0: Immutable Collections for JavaScript — Provides numerous persistent immutable data structures including a list, stack, map, ordered map, set, ordered set, and records.

Lee Byron and Contributors

Sonner 1.7: The Toast Notification React Component — There’s a live demo to try on the homepage, or see the GitHub repo. v1.7 focuses on animation improvements, browser support, and React 19.

Emil Kowalski

Quaternion.js: A JavaScript Quaternion library — Last week we featured the author’s Fraction.js library, now we go a step deeper with a way to work with 3D rotations using quarternions.

Robert Eisele

  • BlockNote 0.19 – 'Notion-style' block-based editor. Now supporting column-based layouts and client-side export to .docx and PDF. There's a demo on the project's homepage.

  • 🔐 OpenPGP.js 6.0 – OpenPGP implementation for JavaScript now supporting the new version of the OpenPGP spec, RFC 9580.

  • Fastify 5.1 – The fast, low overhead Node.js web framework.

  • xr 6.4 – Bring VR/AR to React Three Fiber apps.

📰 Classifieds

⚙️ Create entire web apps with Reactile and let it handle your widgets and windows within a single browser tab. 1-month free trial. Try it now.


Meticulous automatically creates & maintains E2E UI tests. Zero flakes. Used by Lattice, Bilt Rewards and others.


Pythagora is an AI dev tool that builds production-ready tools (not demo apps). It writes the code and talks to you in the process.

📗 We're also reading..

We've also had some tabs open that aren't JavaScript specific but you might find interesting nonetheless:

🫣 Weird Lexical Syntax by Justine Tunney. Justine is building a syntax highlighter and set out to learn 42 programming languages in a single month to help figure out the edge cases. She recounts the surprising things she discovered about the syntax of various languages, including JavaScript.

👻 Before You Buy a Domain, Check if it's Haunted by Bryan Braun. Buying a domain for a side project is always fun, but it's far less fun when the domain was previously used for nefarious purposes and comes with baggage..

🤔 What Has Case Distinction But is Neither Uppercase or Lowercase? by Raymond Chen. It sounds like a riddle, but there are actually Unicode characters that have case distinction yet are neither uppercase nor lowercase themselves.

n