<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>JavaScript Weekly</title>
    <description>A newsletter of JavaScript articles, news and cool projects</description>
    <link>https://javascriptweekly.com/</link>
    <item>
      <title>Ryan Dahl: 'Why reimplement Node? It works.'</title>
      <link>https://javascriptweekly.com/issues/806</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​806 — October 13, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191505/rss" style=" color: #3366aa;"&gt;Read on the Web&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;JavaScript Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191449/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/m1xxxsvconnhew26d4uh.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191449/rss" title="deno.com" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Deno is Joining Cloudflare (But…)&lt;/a&gt;&lt;/span&gt; — Maybe David Bushell &lt;a href="https://javascriptweekly.com/link/191450/rss" style=" color: #3366aa;   "&gt;saw the writing on the wall&lt;/a&gt;, as the Deno team isn't joining Cloudflare to keep working on &lt;em&gt;Deno&lt;/em&gt;, but to fold &lt;a href="https://javascriptweekly.com/link/191451/rss" style=" color: #3366aa;   "&gt;celld&lt;/a&gt; into &lt;code&gt;workerd&lt;/code&gt; so Durable Objects can be self-hosted (&lt;a href="https://javascriptweekly.com/link/191506/rss" style=" color: #3366aa;   "&gt;more on that here&lt;/a&gt;). The Deno runtime will get a final year of official fixes, Deno Deploy closes in six months, and &lt;a href="https://javascriptweekly.com/link/191452/rss" style=" color: #3366aa;   "&gt;JSR&lt;/a&gt; moves to Cloudflare's infrastructure.&lt;/p&gt;
  &lt;p&gt;Ryan Dahl &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 &lt;a href="https://javascriptweekly.com/link/191453/rss" style=" color: #3366aa; font-weight: 500;"&gt;On Hacker News&lt;/a&gt;, Ryan Dahl noted that Deno &lt;em&gt;"has been sucked into the gravity well of Node compatibility"&lt;/em&gt; before asking: &lt;em&gt;"Why reimplement Node? It works."&lt;/em&gt; But what happens &lt;a href="https://javascriptweekly.com/link/191454/rss" style=" color: #3366aa; font-weight: 500;"&gt;to the JavaScript™ trademark case&lt;/a&gt;, I wonder…?&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191448/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/f0a41815.png" width="135" height="135" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191448/rss" title="agentfield.ai" style=" color: #3366aa;    font-size: 1.05em;"&gt;CodeAF: #1 of Ten Coding Harnesses on DeepSWE&lt;/a&gt;&lt;/span&gt; — Ten coding harnesses ran the same open model on 113 real GitHub issues. CodeAF solved the most and paid the least per solved issue: 3.4x less than Claude Code, 4.8x less than OpenCode. A new open-source coding harness built for open models.&lt;/p&gt;
  &lt;p&gt;AgentField AI &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191455/rss" title="bun.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Bun 1.4.3 Adds &lt;code&gt;bun check&lt;/code&gt;, a Built-In TypeScript Type Checker&lt;/a&gt;&lt;/span&gt; — &lt;code&gt;bun check&lt;/code&gt; is a port of TypeScript 7's checker that reads your &lt;code&gt;tsconfig.json&lt;/code&gt;, reports the same errors as &lt;code&gt;tsc&lt;/code&gt; and, Jarred claims, runs 3-6x faster. It plugs into &lt;code&gt;bun run&lt;/code&gt;/&lt;code&gt;test&lt;/code&gt;/&lt;code&gt;build&lt;/code&gt; too. Idle server processes now use far less CPU, and a JavaScriptCore upgrade picks up &lt;a href="https://javascriptweekly.com/link/191456/rss" style=" color: #3366aa;   "&gt;numerous perf gains&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Jarred Sumner &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;AWS has launched &lt;a href="https://javascriptweekly.com/link/191457/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Lambda Web Functions&lt;/a&gt;, which run an ordinary port-listening Node server (Express, Hono, Fastify, etc.) on Lambda with no handler rewrite, billing for active CPU time and separately for memory.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 The &lt;a href="https://javascriptweekly.com/link/191458/rss" style=" color: #3366aa; font-weight: 500;   "&gt;2026 &lt;em&gt;Stack Overflow&lt;/em&gt; Developer Survey results&lt;/a&gt; are out (30,903 people took part) with JavaScript the #1 language for the 12th year in a row (and TypeScript at #6).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 Despite this week's &lt;a href="https://javascriptweekly.com/link/191459/rss" style=" color: #3366aa; font-weight: 500;   "&gt;fresh stir&lt;/a&gt;, no malicious Zod release reached npm. &lt;a href="https://javascriptweekly.com/link/191460/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Malicious commits pushed to its repo in September&lt;/a&gt; were reverted the same day, as &lt;a href="https://javascriptweekly.com/link/191461/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Colin McDonnell explains&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 &lt;a href="https://javascriptweekly.com/link/191462/rss" style=" color: #3366aa; font-weight: 500;   "&gt;An out-of-band Next.js security release is due tomorrow&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELEASES:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Last second addition:&lt;/strong&gt; &lt;a href="https://javascriptweekly.com/link/191508/rss" style=" color: #3366aa; font-weight: 500;   "&gt;TanStack Start 1.0&lt;/a&gt; has just dropped. Big news for full-stack React and Solid fans! :-)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🎉 &lt;a href="https://javascriptweekly.com/link/191463/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Partytown 1.0&lt;/a&gt; – A popular way to relocate third-party scripts to run in a Web Worker rather than on the main thread has left beta after five years in development.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191464/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Marionette 5.0&lt;/a&gt; – Six years on, the Backbone-era framework returns with a core free of Backbone, jQuery and Underscore… and they explain why!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191507/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Bootstrap 6 Alpha&lt;/a&gt; – An early look at Bootstrap's first major release since 2021, leaning on modern CSS and making its JavaScript plugins ESM-only.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191465/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Express 5.3.0&lt;/a&gt; – A maintenance release worth upgrading to, as patched &lt;code&gt;qs&lt;/code&gt;, &lt;code&gt;proxy-addr&lt;/code&gt; and &lt;code&gt;body-parser&lt;/code&gt; dependencies close five CVEs.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📖  Articles and Videos&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191466/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/gacrsvr1mipjqdooocro.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;📊&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/191466/rss" title="lemire.me" style=" color: #3366aa;    font-size: 1.05em;"&gt;WebSocket Servers in JavaScript: Node.js, Bun, and Deno&lt;/a&gt;&lt;/span&gt; — In 2023, &lt;a href="https://javascriptweekly.com/link/191467/rss" style=" color: #3366aa;   "&gt;Daniel found Bun much faster&lt;/a&gt; than Node at relaying WebSocket messages, but there was a bug in his Bun server. This new attempt uses a C client/relay as a baseline, and Node 26 now gets close to C latency, ahead of Bun and Deno.&lt;/p&gt;
  &lt;p&gt;Daniel Lemire &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191468/rss" title="sindresorhus.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;How Sindre Sorhus' Personal Site is Now Made in Swift&lt;/a&gt;&lt;/span&gt; — One of JavaScript's most prolific developers explains how he's dropped Astro and now builds his personal site with Swift, including the styling and markup, with broken links and style typos failing at compile time (&lt;a href="https://javascriptweekly.com/link/191469/rss" style=" color: #3366aa;   "&gt;source&lt;/a&gt;).&lt;/p&gt;
  &lt;p&gt;Sindre Sorhus &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191470/rss" title="sentry.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Too Many Agent Traces to Read? Find the Ones That Matter, Live Oct 14&lt;/a&gt;&lt;/span&gt; — Bad answers, wrong tool calls, too many traces. See how Sentry engineers find the failures worth fixing. &lt;a href="https://javascriptweekly.com/link/191470/rss" style=" color: #3366aa;   "&gt;Register now&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Sentry &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191471/rss" title="www.raymondcamden.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Tiny Apps with TinyJS&lt;/a&gt;&lt;/span&gt; — A quick look at &lt;a href="https://javascriptweekly.com/link/191472/rss" style=" color: #3366aa;   "&gt;a new way to make tiny JS-powered desktop apps&lt;/a&gt; we featured a few weeks ago.&lt;/p&gt;
  &lt;p&gt;Raymond Camden &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191473/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Yet Another Way to Invoke Functions Without Parentheses&lt;/a&gt; – There are many ways to invoke arbitrary functions in JavaScript &lt;em&gt;without&lt;/em&gt; using parens, but this is a particularly obscure one! &lt;cite&gt;bartosz&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191474/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Six Months of Building with Remix 3&lt;/a&gt; – What the post-React Remix (v3 was released earlier this month) is like to work with day to day. &lt;cite&gt;Sergio Xalambrí&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191475/rss" style=" color: #3366aa; font-weight: 500;   "&gt;A Visual Notation for React's Parent and Owner Trees&lt;/a&gt; – With &lt;a href="https://javascriptweekly.com/link/191476/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a playground&lt;/a&gt; that draws them from your code. &lt;cite&gt;Jules Blom&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191477/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How to Test an &lt;code&gt;iframe&lt;/code&gt;'s &lt;code&gt;postMessage&lt;/code&gt; Handler&lt;/a&gt; &lt;cite&gt;Keshav Malik&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191478/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/yyyvmcrgd42zwknefp1s.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;🤖&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/191478/rss" title="anoma.ly" style=" color: #3366aa;    font-size: 1.05em;"&gt;OpenCode 2.0: A Big Update for the Open Coding Agent&lt;/a&gt;&lt;/span&gt; — A full-featured agentic coding app, built on Bun, that's more akin to &lt;em&gt;Claude Code&lt;/em&gt; than &lt;a href="https://javascriptweekly.com/link/191479/rss" style=" color: #3366aa;   "&gt;Pi&lt;/a&gt;, say. v2.0 overhauls it with background subagents, a 'code mode' to let models script MCP tool calls, and clients for vanilla JS and Effect code to drive it.&lt;/p&gt;
  &lt;p&gt;Anomaly / The OpenCode Team &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 If you've not given OpenCode a try yet, you can &lt;a href="https://javascriptweekly.com/link/191480/rss" style=" color: #3366aa; font-weight: 500;"&gt;get started here&lt;/a&gt;.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191484/rss" title="tamagui.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Tamagui 3: One React UI Codebase for Web and Native&lt;/a&gt;&lt;/span&gt; — A styling system and component kit for sharing UI between React web apps and React Native, with a compiler that keeps things fast on both. v3 adds Tailwind-style props and React Strict DOM support.&lt;/p&gt;
  &lt;p&gt;Nate Wienert &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191483/rss" title="try.expo.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Mobile AI Infrastructure for Web Devs Who Code with Agents&lt;/a&gt;&lt;/span&gt; — Point the agent you use for the web at iOS and Android. Expo takes care of the native builds and the trip to the stores.&lt;/p&gt;
  &lt;p&gt;Expo &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191481/rss" title="h3.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;H3 v2: The UnJS HTTP Framework Rebuilt on Web Standards&lt;/a&gt;&lt;/span&gt; — The minimal HTTP framework behind Nitro and Nuxt's server layer is now stable in v2, a rewrite around standard &lt;code&gt;Request&lt;/code&gt; and &lt;code&gt;Response&lt;/code&gt; so the same app runs on Node, Bun, Deno, Workers, and even in the browser. &lt;a href="https://javascriptweekly.com/link/191482/rss" style=" color: #3366aa;   "&gt;Migration guide&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Pooya Parsa &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191485/rss" title="shaders.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Shaders: 190+ WebGPU Effect Components, Now Open Source&lt;/a&gt;&lt;/span&gt; — Ripples, glows, and dissolves into ASCII, composed as components rather than written as shader code, for React, Vue, Svelte, Solid, or plain JS. The engine, framework bindings, and &lt;a href="https://javascriptweekly.com/link/191486/rss" style=" color: #3366aa;   "&gt;the components themselves&lt;/a&gt; are now all MIT licensed.&lt;/p&gt;
  &lt;p&gt;Simon Le Marchant &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 If you like this vibe, &lt;a href="https://javascriptweekly.com/link/191487/rss" style=" color: #3366aa; font-weight: 500;"&gt;ascii.rest&lt;/a&gt;, which offers &lt;em&gt;"236 animated ASCII pieces for web pages"&lt;/em&gt;, is also worth a look.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191488/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js v26.11.0 (Current)&lt;/a&gt; – Adds a &lt;code&gt;--process-timeout&lt;/code&gt; flag to end a process after a set time, plus virtual table support in &lt;code&gt;node:sqlite&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191489/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Hono 5.0 RC&lt;/a&gt; – The web-standards server framework goes ESM-only and moves its runtime adapters into separate packages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 &lt;a href="https://javascriptweekly.com/link/191490/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Handlebars 4.7.10&lt;/a&gt; – The templating library fixes two critical JavaScript injection flaws affecting releases back to 3.0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191491/rss" style=" color: #3366aa; font-weight: 500;   "&gt;he 2.0&lt;/a&gt; – Robust HTML entity encoder/decoder. First release in eight years, now ESM with named exports.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191492/rss" style=" color: #3366aa; font-weight: 500;   "&gt;React Aria 1.22&lt;/a&gt; – Adds a new &lt;a href="https://javascriptweekly.com/link/191493/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Sheet component&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191494/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pnpm 12.12&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
	&lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;⚡️Add lightning-fast 1D/2D barcode scanning to your web app with &lt;a href="https://javascriptweekly.com/link/191495/rss" style=" color: #3366aa; font-weight: 500;   "&gt;STRICH&lt;/a&gt;. On-device processing, &lt;a href="https://javascriptweekly.com/link/191495/rss" style=" color: #3366aa; font-weight: 500;   "&gt;free trial and demo!&lt;/a&gt;&lt;/p&gt;
 
&lt;p&gt;Durable AI agents built with the AI SDK you already use. Long-lived LLM sessions that survive deploys, crashes &amp;amp; refreshes. &lt;a href="https://javascriptweekly.com/link/191496/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Test out chat.agent on Trigger.dev&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;🎬 Your app needs video, not a video team. Upload any format to &lt;a href="https://javascriptweekly.com/link/191497/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Hyperserve's API&lt;/a&gt;, get back MP4 on a global CDN. Ship video in an afternoon.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📢  Elsewhere in the ecosystem&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;In &lt;a href="https://javascriptweekly.com/link/191498/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Fingerprints are the New Cookies&lt;/a&gt;, Roy Fish demonstrates the various ways web pages can assign a unique(ish) identity to you using JavaScript.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 Theo Browne set AI agents loose on porting the TypeScript 7 compiler to Rust, and &lt;a href="https://javascriptweekly.com/link/191499/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ts-rust&lt;/a&gt; is the (very experimental) result.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📱 Following Shopify, &lt;a href="https://javascriptweekly.com/link/191500/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Coinbase is moving its app off React Native&lt;/a&gt;, saying agents have made building each feature twice cheap enough to go fully native.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fancy a retro robot voice in your web experience? &lt;a href="https://javascriptweekly.com/link/191501/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Klattsch&lt;/a&gt; is a voice synthesizer you can use on the web or from Node.js as an npm package. &lt;em&gt;Daiiisy, daiiisy…&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Three years ago we mentioned Linus Groh's Zig-based &lt;a href="https://javascriptweekly.com/link/191502/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Kiesel&lt;/a&gt; JavaScript engine. It passed 25% of test262 back then, but &lt;a href="https://javascriptweekly.com/link/191503/rss" style=" color: #3366aa; font-weight: 500;   "&gt;v0.4.0 has landed&lt;/a&gt; and it's now at 94.7% (not far behind V8) and supports modern language proposals like await dictionary and numerous iterator proposals.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://javascriptweekly.com/open/806/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 13 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/806</guid>
    </item>
    <item>
      <title>Why don't more developers 'use the platform'?</title>
      <link>https://javascriptweekly.com/issues/805</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​805 — October 6, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191187/rss" style=" color: #3366aa;"&gt;Read on the Web&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;JavaScript Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191125/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/hnza9nriyhgnntkp2aa7.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191125/rss" title="nolanlawson.com" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Why Don't More Developers 'Use the Platform'?&lt;/a&gt;&lt;/span&gt; — A thoughtful look at why we often rebuild what browsers already offer, from someone usually on the platform's side. It kicked off &lt;a href="https://javascriptweekly.com/link/191126/rss" style=" color: #3366aa;   "&gt;an extensive Hacker News discussion&lt;/a&gt;, with many arguing native controls and APIs are too limited or awkward to depend on.&lt;/p&gt;
  &lt;p&gt;Nolan Lawson &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191124/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/94d50996.png" width="110" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191124/rss" title="master.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Free Course: Build Ambitious Modern Interfaces Faster with OpenAI Codex&lt;/a&gt;&lt;/span&gt; — Join Katia Gil Guzman for this free Codex course and learn how agentic coding has changed frontend development. You'll cover setup, prompting, feedback, skills, automations, deployment and more.&lt;/p&gt;
  &lt;p&gt;Master.dev &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191127/rss" title="preactjs.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Preact 11 Released&lt;/a&gt;&lt;/span&gt; — Six years after &lt;a href="https://javascriptweekly.com/link/191128/rss" style=" color: #3366aa;   "&gt;the road to Preact 11&lt;/a&gt; began, the latest version of the popular &lt;em&gt;"alternative to React with the same modern API"&lt;/em&gt; is here, with improved hydration, automatic ref forwarding, and an ESM-only package. The &lt;a href="https://javascriptweekly.com/link/191129/rss" style=" color: #3366aa;   "&gt;upgrade guide&lt;/a&gt; covers the changes.&lt;/p&gt;
  &lt;p&gt;The Preact Team &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191130/rss" title="nuxt.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Nuxt 4.6: A Big Step Towards a Server-Agnostic Nuxt&lt;/a&gt;&lt;/span&gt; — A meaty release for the full-stack Vue framework with a server layer that no longer ties you to Nitro (pure Vite server builds are now an experimental option), built-in sessions, Vue Vapor support, and a new CLI (&lt;a href="https://javascriptweekly.com/link/191131/rss" style=" color: #3366aa;   "&gt;Nuxt CLI 4.0&lt;/a&gt;).&lt;/p&gt;
  &lt;p&gt;Daniel Roe &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Prolific package maintainer &lt;a href="https://javascriptweekly.com/link/191132/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Sindre Sorhus has disabled outside pull requests&lt;/a&gt; due to AI contribution spam, though he'll keep maintaining his projects. &lt;a href="https://javascriptweekly.com/link/191133/rss" style=" color: #3366aa; font-weight: 500;   "&gt;SWC also now restricts PRs&lt;/a&gt; to trusted contributors.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 The &lt;a href="https://javascriptweekly.com/link/191134/rss" style=" color: #3366aa; font-weight: 500;   "&gt;JavaScript Framework Benchmark&lt;/a&gt; site has added &lt;a href="https://javascriptweekly.com/link/191135/rss" style=" color: #3366aa; font-weight: 500;   "&gt;results for Chrome 154&lt;/a&gt; covering 196(!) ways to implement an app, how each performs, and how large they are.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191136/rss" style=" color: #3366aa; font-weight: 500;   "&gt;&lt;code&gt;npm stage publish&lt;/code&gt; can now create new packages&lt;/a&gt;, so automated workflows no longer need a manual first publish.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELEASES:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191137/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Remix 3.0&lt;/a&gt; – No official post yet, but the new stable release of the rebuilt full-stack framework, with no React required. The &lt;a href="https://javascriptweekly.com/link/191138/rss" style=" color: #3366aa; font-weight: 500;   "&gt;RC release post&lt;/a&gt; has more info, though.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191139/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Ink 8.0&lt;/a&gt; – The popular TUI renderer now requires React 19.3 and adds scroll offsets for building scrollable views, now common in coding agent UIs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191140/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Inferno 10&lt;/a&gt; – React-like UI library built for raw rendering speed. Now shifts more work from runtime to its JSX compiler.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191141/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Qwik 2.0 RC&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/191142/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pnpm 12.10&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/191143/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Ember 7.3&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/191144/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Video.js 10&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/191145/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ESLint 10.12&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📖  Articles and Videos&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191146/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ta6jwcu6syxtrqcq4xb4.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191146/rss" title="claude.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Getting Started with Claude Code &lt;em&gt;Mods&lt;/em&gt;&lt;/a&gt;&lt;/span&gt; — Claude Code has just added support for &lt;a href="https://javascriptweekly.com/link/191147/rss" style=" color: #3366aa;   "&gt;Mods&lt;/a&gt;, a way to extend the agentic coding harness with JavaScript so you can watch events, change behavior, and draw custom UI. Addy builds a mod here in ~80 lines that shows a live 'forecast' of your context window.&lt;/p&gt;
  &lt;p&gt;Addy Osmani &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191148/rss" title="dbushell.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Friendship Ended with Deno, Now Node is My Best Friend&lt;/a&gt;&lt;/span&gt; — David &lt;a href="https://javascriptweekly.com/link/191149/rss" style=" color: #3366aa;   "&gt;felt good about Deno&lt;/a&gt; in 2021, but has now returned to Node and is surprised by how much has improved. He ported his site generator back with barely any changes, and doesn't hold back on where he thinks Deno went wrong.&lt;/p&gt;
  &lt;p&gt;David Bushell &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191150/rss" title="serpapi.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;100+ Search Engines. One Simple API&lt;/a&gt;&lt;/span&gt; — Build with real-time data from Google, YouTube, Amazon, and more. SerpApi delivers structured JSON and Markdown for AI agents and your apps. Skip scraping headaches.&lt;/p&gt;
  &lt;p&gt;SerpApi &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191151/rss" title="blog.gaborkoos.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;I Tested 11 HTTP Resilience Libraries&lt;/a&gt;&lt;/span&gt; — How do fetch wrappers like &lt;a href="https://javascriptweekly.com/link/191152/rss" style=" color: #3366aa;   "&gt;Ky&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/191153/rss" style=" color: #3366aa;   "&gt;ofetch&lt;/a&gt;, and &lt;a href="https://javascriptweekly.com/link/191154/rss" style=" color: #3366aa;   "&gt;Wretch&lt;/a&gt; behave if you abort mid-retry? The author of &lt;a href="https://javascriptweekly.com/link/191155/rss" style=" color: #3366aa;   "&gt;ffetch&lt;/a&gt; tested eleven options and found five still attempt retries after cancellation.&lt;/p&gt;
  &lt;p&gt;Gabor Koos &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191156/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How Booking.com Cut Its Node.js Service's Costs by 38%&lt;/a&gt; – By moving from PM2 to &lt;a href="https://javascriptweekly.com/link/191157/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Watt&lt;/a&gt;'s worker threads and reworking load balancing and worker configuration. &lt;cite&gt;Ilya Malyavin&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191158/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Readable Regular Expressions for TypeScript, Inspired by Emacs&lt;/a&gt; – Rebuilding the SemVer regex from named, composable pieces. &lt;cite&gt;Rahul M. Juliato&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/191159/rss" style=" color: #3366aa; font-weight: 500;   "&gt;On Automatic Type Refinements&lt;/a&gt; – Which &lt;code&gt;filter&lt;/code&gt; callbacks let TypeScript narrow an array's type, and which don't. &lt;cite&gt;Radosław Miernik&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191160/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/hh9exzpq3o95k5zdqmyd.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191160/rss" title="tanstack.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;TanStack Charts 1.0: A Composable, Typed Charting Library&lt;/a&gt;&lt;/span&gt; — A framework-neutral way to declaratively specify visualizations in typed, tree-shakable JavaScript which are then rendered with SVG or Canvas. The &lt;a href="https://javascriptweekly.com/link/191161/rss" style=" color: #3366aa;   "&gt;extensive sample catalog (with code)&lt;/a&gt; shows off line, bar, pie and area charts, plus heatmaps, box plots, histograms, etc.&lt;/p&gt;
  &lt;p&gt;Tanner Linsley &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191162/rss" title="svelte.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;SvelteKit 3: &lt;em&gt;'The Same Framework with a Little More Polish'&lt;/em&gt;&lt;/a&gt;&lt;/span&gt; — Svelte's official app framework gets a cleanup/polish release. Few new features, and &lt;a href="https://javascriptweekly.com/link/191163/rss" style=" color: #3366aa;   "&gt;remote functions&lt;/a&gt; remain experimental, but existing users have some work to do to migrate (though &lt;a href="https://javascriptweekly.com/link/191164/rss" style=" color: #3366aa;   "&gt;&lt;code&gt;sv migrate&lt;/code&gt; can handle much of it&lt;/a&gt;).&lt;/p&gt;
  &lt;p&gt;The Svelte Team &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191165/rss" title="www.miris.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Publish to Miris Straight from Adobe Substance 3D Painter&lt;/a&gt;&lt;/span&gt; — Stop sharing decimated 3D content. Stream your high-fidelity Adobe Substance 3D Painter assets via the Miris plugin.&lt;/p&gt;
  &lt;p&gt;Miris &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191166/rss" title="effect.website" style=" color: #3366aa;    font-size: 1.05em;"&gt;Effect 4.0: A Smaller Core, Rebuilt Runtime&lt;/a&gt;&lt;/span&gt; — A ground-up rewrite of the popular library for building reliable apps that handles tricky stuff like resource management, concurrency, retries, typed errors, and more. v4.0 boasts 5x smaller minimal bundles and 86% less memory used per concurrent task. &lt;/p&gt;
  &lt;p&gt;Sebastian Lorenz &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/191167/rss" title="lightpanda.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Lightpanda 1.0: A Headless Browser for Automation&lt;/a&gt;&lt;/span&gt; — A headless browser built from scratch in Zig. With no graphical rendering, it uses a fraction of Chrome's CPU and memory (~35MB memory in a run I just did!). Drive it with Puppeteer/Playwright or, the fun bit, &lt;a href="https://javascriptweekly.com/link/191168/rss" style=" color: #3366aa;   "&gt;script it with plain JavaScript&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Francis Bouvier &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191169/rss" style=" color: #3366aa; font-weight: 500;   "&gt;eslint-cssicorn 0.1&lt;/a&gt; – Sindre Sorhus has moved the CSS-only rules from his mammoth &lt;a href="https://javascriptweekly.com/link/191170/rss" style=" color: #3366aa; font-weight: 500;   "&gt;eslint-plugin-unicorn&lt;/a&gt; ESLint ruleset into a new CSS-focused package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191171/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pixelmatch 8.0&lt;/a&gt; – Tiny, fast pixel-level image comparison library. Switches to a more perceptually accurate color metric, so diff counts will change.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191172/rss" style=" color: #3366aa; font-weight: 500;   "&gt;PR Comment Inbox&lt;/a&gt; – Nicholas Zakas's email-style inbox for GitHub review comments, with threads and read/unread state.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191173/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Electron Forge 8&lt;/a&gt; – Toolkit for building, packaging, and publishing Electron apps.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191174/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Redux Toolkit 2.13&lt;/a&gt; – The official Redux toolset adds TypeScript 7 support.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
	&lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;Bring your wild ideas to &lt;a href="https://javascriptweekly.com/link/191175/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Mozilla Festival&lt;/a&gt;. Gather and connect with other developers and creatives in Barcelona, Oct. 28-30. &lt;a href="https://javascriptweekly.com/link/191175/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Get your badge&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191176/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Trigger.dev&lt;/a&gt; runs your TypeScript agents and workflows in production, with queues, retries, and no timeouts on long-running tasks.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📢  Elsewhere in the ecosystem&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/191177/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/niw2deybmislnoi07vqf.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;📊 &lt;a href="https://javascriptweekly.com/link/191177/rss" style=" color: #3366aa; font-weight: 500;   "&gt;The &lt;em&gt;State of Devs&lt;/em&gt; 2026 survey results are out&lt;/a&gt; with over 5,000 developers sharing their thoughts on software development career security, &lt;a href="https://javascriptweekly.com/link/191178/rss" style=" color: #3366aa; font-weight: 500;   "&gt;AI use/sentiment&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/191179/rss" style=" color: #3366aa; font-weight: 500;   "&gt;hobbies&lt;/a&gt;, and &lt;a href="https://javascriptweekly.com/link/191180/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the workplace&lt;/a&gt; (including income).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/191181/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Why does &lt;code&gt;example.com&lt;/code&gt; now load JavaScript?&lt;/a&gt; The IANA says since most clients hitting the site are automated and don't load JavaScript, it's a way to save bandwidth. There's &lt;a href="https://javascriptweekly.com/link/191182/rss" style=" color: #3366aa; font-weight: 500;   "&gt;more on the site's recent redesign here&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Netlify explains &lt;a href="https://javascriptweekly.com/link/191183/rss" style=" color: #3366aa; font-weight: 500;   "&gt;how it reduced Edge Function invocation latency by ~5x&lt;/a&gt;, switching from hosted V8 isolates to Unikraft MicroVMs on its own edge network.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 &lt;a href="https://javascriptweekly.com/link/191184/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Pi 1.0&lt;/a&gt;, the minimal Node.js-based coding agent, adds MCP and non-LLM model support through 'Codemode'. They also launched an experimental &lt;a href="https://javascriptweekly.com/link/191185/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Pi Durable&lt;/a&gt; runtime for running resilient, long-term agent flows.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://javascriptweekly.com/open/805/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 6 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/805</guid>
    </item>
    <item>
      <title>A-ha's Take on Me, recreated in pure JavaScript</title>
      <link>https://javascriptweekly.com/issues/804</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​804 — September 29, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190985/rss" style=" color: #3366aa;"&gt;Read on the Web&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;JavaScript Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190938/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/holotoxy8ll41zticmyu.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190938/rss" title="claude.dev" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;How Anthropic Made Claude's Apps 3x Faster in Two Weeks&lt;/a&gt;&lt;/span&gt; — A grab bag of performance lessons from a sprint that cut p75 'time-to-typeable' from 3.1s to 0.55s. Em dashes (&lt;em&gt;the irony!&lt;/em&gt;) pushed V8 onto a slower regex path, a stray &lt;code&gt;location.reload()&lt;/code&gt; caused half a million hidden reloads a day, and more.&lt;/p&gt;
  &lt;p&gt;Wang, Attard, and G (Anthropic) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190937/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/da313728.png" width="120" height="120" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190937/rss" title="www.meticulous.ai" style=" color: #3366aa;    font-size: 1.05em;"&gt;Still Writing Tests? Meticulous Is Here&lt;/a&gt;&lt;/span&gt; — Notion, Dropbox and Wiz are now using a testing paradigm they can’t ship without. Built by former Palantir engineers, Meticulous creates an evolving suite of deterministic E2E UI tests, delivering exhaustive coverage with zero developer effort.&lt;/p&gt;
  &lt;p&gt;Meticulous AI &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190939/rss" title="voidzero.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Vite+ 1.0: One CLI for Your Entire JavaScript Toolchain&lt;/a&gt;&lt;/span&gt; — The single &lt;code&gt;vp&lt;/code&gt; command can now manage your Node runtime (if you wish), package manager, dev server, linting, formatting, testing, builds and task running, configured from &lt;code&gt;vite.config.ts&lt;/code&gt;. &lt;a href="https://javascriptweekly.com/link/190940/rss" style=" color: #3366aa;   "&gt;&lt;code&gt;vp migrate&lt;/code&gt;&lt;/a&gt; can be used to bring existing Vite, Vitest, ESLint, tsup, and similar setups into Vite+.&lt;/p&gt;
  &lt;p&gt;VoidZero &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 Evan You also &lt;a href="https://javascriptweekly.com/link/190941/rss" style=" color: #3366aa; font-weight: 500;"&gt;looks back at four months of VoidZero at Cloudflare&lt;/a&gt;, including work on the Oxc React Compiler, Vitest 5, stable type-aware linting, and more.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The &lt;a href="https://javascriptweekly.com/link/190942/rss" style=" color: #3366aa; font-weight: 500;   "&gt;latest TC39 meeting&lt;/a&gt; is taking place in Tokyo now, and three iterator proposals have already advanced to stage 4: &lt;a href="https://javascriptweekly.com/link/190943/rss" style=" color: #3366aa; font-weight: 500;   "&gt;chunking&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190944/rss" style=" color: #3366aa; font-weight: 500;   "&gt;join&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/190945/rss" style=" color: #3366aa; font-weight: 500;   "&gt;includes&lt;/a&gt; (the latter just &lt;a href="https://javascriptweekly.com/link/190946/rss" style=" color: #3366aa; font-weight: 500;   "&gt;shipped in Chrome 154&lt;/a&gt;).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Jarred Sumner shared &lt;a href="https://javascriptweekly.com/link/190947/rss" style=" color: #3366aa; font-weight: 500;   "&gt;𝕏 a preview of Bun compiling JavaScript ahead of time&lt;/a&gt;: 24% faster startup and 48% less memory for Claude Code, but ~2x binary size.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🎉 Cloudflare &lt;em&gt;finally&lt;/em&gt; has &lt;a href="https://javascriptweekly.com/link/190948/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a single CLI for all of its APIs&lt;/a&gt;. &lt;code&gt;cf&lt;/code&gt; is written in TypeScript and covers everything, whereas Wrangler only ever covered a subset.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The Angular team is &lt;a href="https://javascriptweekly.com/link/190949/rss" style=" color: #3366aa; font-weight: 500;   "&gt;building a partly Rust-powered compiler&lt;/a&gt;, because TypeScript 7's Go port lacks APIs the current one relies on.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELEASES:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190950/rss" style=" color: #3366aa; font-weight: 500;   "&gt;MSW (Mock Service Worker) 3.0&lt;/a&gt; – The popular API mocking library is now ESM-only, adds a Vite plugin, supports GraphQL subscriptions, and can intercept page navigations and form submissions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190951/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vinext 1.0&lt;/a&gt; – Cloudflare's Vite-based Next.js reimplementation now supports the Pages and App Routers, and offers a migration path for existing apps.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190952/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Mermaid 12.0&lt;/a&gt; – The diagramming tool now defaults to the ELK layout engine for flowchart, class, state and similar diagrams, so existing ones will look different unless you set &lt;code&gt;layout: dagre&lt;/code&gt;. Also adds &lt;a href="https://javascriptweekly.com/link/190953/rss" style=" color: #3366aa; font-weight: 500;   "&gt;UML use case diagrams&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190954/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pnpm 12.8&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190955/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Angular 22.2&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190956/rss" style=" color: #3366aa; font-weight: 500;   "&gt;TinyBase 10&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190957/rss" style=" color: #3366aa; font-weight: 500;   "&gt;QUnit 3.0&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📖  Articles and Videos&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190958/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/q97l6jlstbu4nz3us8ex.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190958/rss" title="dev.to" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Grand Unifying Architecture of Frontend&lt;/a&gt;&lt;/span&gt; — SolidJS's creator argues that HTMX, React, LiveView, and friends differ mostly in how they split the same three jobs (navigation, content, and instant UI feedback) between client and server. He then shows how &lt;a href="https://javascriptweekly.com/link/190959/rss" style=" color: #3366aa;   "&gt;Solid 2.0&lt;/a&gt; aims to cover the whole spectrum.&lt;/p&gt;
  &lt;p&gt;Ryan Carniato &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190960/rss" title="jobs.fidelity.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Build Products That Help People Build Their Lives&lt;/a&gt;&lt;/span&gt; — Fidelity technologists can change the way our clients invest - for the better and for everyone.&lt;/p&gt;
  &lt;p&gt;Fidelity Careers &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190961/rss" title="adventures.nodeland.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Optimizing Objects with &lt;code&gt;null&lt;/code&gt; Prototypes&lt;/a&gt;&lt;/span&gt; — In V8, objects created with &lt;code&gt;{ __proto__: null }&lt;/code&gt; or &lt;code&gt;Object.create(null)&lt;/code&gt; start in a slower 'dictionary mode'. Matteo shows how creating a plain object and then setting its prototype to &lt;code&gt;null&lt;/code&gt; preserves fast properties.&lt;/p&gt;
  &lt;p&gt;Matteo Collina &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 If you fancy going deeper, &lt;a href="https://javascriptweekly.com/link/190962/rss" style=" color: #3366aa; font-weight: 500;"&gt;Fast properties in V8&lt;/a&gt; is the V8 team's 2017 explainer of how objects switch between fast and 'dictionary' mode.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190963/rss" title="flaviocopes.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Node.js Built-ins That Replace npm Packages&lt;/a&gt;&lt;/span&gt; — A tour of 12 Node built-ins that replace common ecosystem packages along with their stability levels and some gotchas that might keep you using the established alternatives.&lt;/p&gt;
  &lt;p&gt;Flavio Copes &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/190964/rss" style=" color: #3366aa; font-weight: 500;   "&gt;JavaScript's Greatest Pun? &lt;code&gt;${{ }}&lt;/code&gt;&lt;/a&gt; – Looks like Mustache, but &lt;code&gt;${{ name }}&lt;/code&gt; passes an object using shorthand properties to a tag function, preserving both the variable's name and value. &lt;cite&gt;Nishant Shukla&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/190965/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How GitHub Improved Performance by Moving Off CSS-in-JS&lt;/a&gt; &lt;cite&gt;Josh Black and Marie Lucca (GitHub)&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190966/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/yvxogbuz6gl1ubyguxml.jpg" width="640" style="        line-height: 100%;  "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190966/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Size Limit: A JavaScript Performance Budgeting Tool&lt;/a&gt;&lt;/span&gt; — Set a size or load-time budget for your code and this tool can fail CI (or flag a PR) if a change goes over it. You can also do one-off checks and see visualizations of where the bytes are. Framework-agnostic and doesn’t care which bundler or CI you use.&lt;/p&gt;
  &lt;p&gt;Andrey Sitnik &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190967/rss" title="www.tigerdata.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Your UI Gets Blamed for a Slow Query&lt;/a&gt;&lt;/span&gt; — TimescaleDB extends Postgres so the query behind your UI returns fast as data grows. &lt;a href="https://javascriptweekly.com/link/190967/rss" style=" color: #3366aa;   "&gt;Get $1000 credit to start&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Tiger Data (creators of TimescaleDB) &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190968/rss" title="blog.cloudflare.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;EmDash 1.0: Cloudflare's &lt;em&gt;WordPress&lt;/em&gt; 'Successor' is Now Stable&lt;/a&gt;&lt;/span&gt; — An Astro-based alternative to WordPress, now with a decentralized AT Protocol-based plugin registry and plugins that run in sandboxes. It’s not Cloudflare-only, either, as it also runs on Node.js.&lt;/p&gt;
  &lt;p&gt;Buscemi, Kane, and Pham (Cloudflare) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;📝&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/190969/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;DOCX 9.8: Generate Word &lt;code&gt;.docx&lt;/code&gt; Files from JavaScript&lt;/a&gt;&lt;/span&gt; — A comprehensive library for generating &lt;code&gt;docx&lt;/code&gt; files. It’s only a few months since we linked to it, but this is a &lt;em&gt;big&lt;/em&gt; release with support for charts, shapes and watermarks, plus more math notation support. (&lt;a href="https://javascriptweekly.com/link/190970/rss" style=" color: #3366aa;   "&gt;Homepage&lt;/a&gt;.)&lt;/p&gt;
  &lt;p&gt;Dolan Miu &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;🔊 &lt;a href="https://javascriptweekly.com/link/190971/rss" style=" color: #3366aa; font-weight: 500;   "&gt;wavesurfer 8.0&lt;/a&gt; – Popular audio waveform renderer and player. Refactored for better efficiency, with numerous bug fixes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190972/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pretty-bytes 7.2&lt;/a&gt; – Convert byte quantities into human readable strings.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;✉️ &lt;a href="https://javascriptweekly.com/link/190973/rss" style=" color: #3366aa; font-weight: 500;   "&gt;postal-mime 4.0&lt;/a&gt; – An email parsing library that works everywhere.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190974/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Typia 15.0&lt;/a&gt; – Turn pure TypeScript types into runtime validators.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
	&lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;The future of mobile development is agentic. For years, mobile shipped slower than the web. Now, agents are coding/testing/shipping &lt;a href="https://javascriptweekly.com/link/190975/rss" style=" color: #3366aa; font-weight: 500;   "&gt;all on Expo&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;🤖 Blocking all bots breaks AI agents. Blocking none invites fraud. &lt;a href="https://javascriptweekly.com/link/190976/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Fingerprint&lt;/a&gt; tells verified agents from bad actors.&lt;/p&gt;
 
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190977/rss" style=" color: #3366aa; font-weight: 500;   "&gt;SurveyJS&lt;/a&gt;: Build complex forms faster with a drag-and-drop builder for any JavaScript app. Self-hosted and backend-agnostic.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📢  Elsewhere in the ecosystem&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190978/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/jilmudkfxkr6xbomw3gi.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;🎵 Tonny Espeset has &lt;a href="https://javascriptweekly.com/link/190978/rss" style=" color: #3366aa; font-weight: 500;   "&gt;recreated the '80s hit &lt;em&gt;Take on Me&lt;/em&gt; by A-ha in pure JavaScript&lt;/a&gt; (&lt;strong&gt;along with synthesized vocals!&lt;/strong&gt;), running through the always-entertaining &lt;a href="https://javascriptweekly.com/link/190979/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Dittytoy&lt;/a&gt; online JavaScript music playground.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190980/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Git 2.56&lt;/a&gt; has just been released. It adds &lt;code&gt;git add --resolved&lt;/code&gt; to safely stage merge conflict fixes, &lt;code&gt;git branch --delete-merged&lt;/code&gt; for bulk branch cleanup, and more. All explained within.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;TanStack's Tanner Linsley &lt;a href="https://javascriptweekly.com/link/190981/rss" style=" color: #3366aa; font-weight: 500;   "&gt;built Redact&lt;/a&gt;, &lt;em&gt;'an alternative logical projection of React'&lt;/em&gt; aiming for full API compatibility with a simpler implementation, smaller bundles and better performance. It's now &lt;a href="https://javascriptweekly.com/link/190982/rss" style=" color: #3366aa; font-weight: 500;   "&gt;on GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190983/rss" style=" color: #3366aa; font-weight: 500;   "&gt;A quick history of why certain port numbers&lt;/a&gt; like 3000 and 8080 are commonly used in development.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://javascriptweekly.com/open/804/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/804</guid>
    </item>
    <item>
      <title>JavaScript desktop apps in under 10MB</title>
      <link>https://javascriptweekly.com/issues/803</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​803 — September 22, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190694/rss" style=" color: #3366aa;"&gt;Read on the Web&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;JavaScript Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190636/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/l5ejacd7rpbkelmaxdto.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190636/rss" title="tinyjs.app" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;tinyjs: Build JavaScript Desktop Apps in &amp;lt;10MB&lt;/a&gt;&lt;/span&gt; — I built an app with this and was impressed. You get a &lt;a href="https://javascriptweekly.com/link/190637/rss" style=" color: #3366aa;   "&gt;txiki.js&lt;/a&gt;-powered backend with full system access (including FFI!), native webview rendering, and tiny macOS, Linux, and Windows builds. It even makes it easy to sign/notarize the final app.&lt;/p&gt;
  &lt;p&gt;Tarwin Stroh-Spijer &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;There are lots of great options in this space though:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190638/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Electrobun&lt;/a&gt; offers richer multi-window and GPU features, at the cost of a larger TypeScript runtime – though it can instead use Zig, Rust, Go, or Odin for a tiny native main process.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190639/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Perry&lt;/a&gt; is a TypeScript to native AOT compiler whose primary UI model renders AppKit, Win32 and GTK4 widgets for a more conventionally native feel.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190640/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Electron&lt;/a&gt; and the experimental &lt;a href="https://javascriptweekly.com/link/190695/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Deno Desktop&lt;/a&gt; are powerful, but their executables typically run several times larger.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190642/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Neutralinojs&lt;/a&gt; apps can be even smaller than tinyjs's, but you lose the general-purpose JavaScript privileged backend by design.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190635/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/5c853e9e.png" width="153" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190635/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Full-Text Search in Drizzle Without a Second System&lt;/a&gt;&lt;/span&gt; — Try the official ParadeDB integration for Drizzle. Search your live Postgres tables. No ETL, no Elasticsearch. ParadeDB cloud coming soon.&lt;/p&gt;
  &lt;p&gt;ParadeDB &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190643/rss" title="duckdb.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;Persistent Databases in the Browser with DuckDB-Wasm and OPFS&lt;/a&gt;&lt;/span&gt; — A walkthrough of running &lt;a href="https://javascriptweekly.com/link/190644/rss" style=" color: #3366aa;   "&gt;DuckDB&lt;/a&gt; in the browser with a database file that survives reloads using the &lt;a href="https://javascriptweekly.com/link/190645/rss" style=" color: #3366aa;   "&gt;Origin Private File System&lt;/a&gt; now supported by all major browsers.&lt;/p&gt;
  &lt;p&gt;Piovesan and Wielenga (DuckDB) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190646/rss" title="linear.app" style=" color: #3366aa;    font-size: 1.05em;"&gt;How Linear Reworked Its CI for 4x the Tests&lt;/a&gt;&lt;/span&gt; — Eager agents grew Linear's test suite, and its CI costs with it! They share some remedies: rewriting type-aware ESLint rules as plain AST checks cut lint time 55% and eased a move to &lt;a href="https://javascriptweekly.com/link/190647/rss" style=" color: #3366aa;   "&gt;Oxlint&lt;/a&gt;, while selectively turning off Vitest's isolation saved a further 17% a month.&lt;/p&gt;
  &lt;p&gt;Mufeez Amjad (Linear) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Lovable &lt;a href="https://javascriptweekly.com/link/190648/rss" style=" color: #3366aa; font-weight: 500;   "&gt;rewrote Vite's dev server in Rust&lt;/a&gt; (calling it &lt;a href="https://javascriptweekly.com/link/190649/rss" style=" color: #3366aa; font-weight: 500;   "&gt;OJ&lt;/a&gt;) for performance reasons, but Evan You &lt;a href="https://javascriptweekly.com/link/190650/rss" style=" color: #3366aa; font-weight: 500;   "&gt;disputes the benchmark&lt;/a&gt; and predicts AI will have everyone maintaining &lt;em&gt;"their own slop fork"&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 &lt;a href="https://javascriptweekly.com/link/190651/rss" style=" color: #3366aa; font-weight: 500;   "&gt;npmchart.com&lt;/a&gt; plots download trends, releases and repo activity for any npm package (here's &lt;a href="https://javascriptweekly.com/link/190652/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Svelte's&lt;/a&gt;, for example), and lets you compare packages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 npm now offers &lt;a href="https://javascriptweekly.com/link/190653/rss" style=" color: #3366aa; font-weight: 500;   "&gt;stage-only tokens&lt;/a&gt; to let automated workflows stage a release for a maintainer to approve with 2FA. This offers a migration path for those who can't move to &lt;a href="https://javascriptweekly.com/link/190654/rss" style=" color: #3366aa; font-weight: 500;   "&gt;trusted publishing&lt;/a&gt; yet.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELEASES:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190655/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Turborepo 2.11&lt;/a&gt; – Experimental Rust, Python and Go support joins the task graph, plus up to 4x faster startup over 2.9.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190656/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ESLint 10.11.0&lt;/a&gt; – Performance update with faster startup and linting.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190657/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js 26.10.0 (Current)&lt;/a&gt; – Adds &lt;a href="https://javascriptweekly.com/link/190658/rss" style=" color: #3366aa; font-weight: 500;   "&gt;&lt;code&gt;util.debounce&lt;/code&gt;/&lt;code&gt;throttle&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 &lt;a href="https://javascriptweekly.com/link/190659/rss" style=" color: #3366aa; font-weight: 500;   "&gt;billboard.js 4.1&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190660/rss" style=" color: #3366aa; font-weight: 500;   "&gt;QuickJS-ng 0.17.0&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190661/rss" style=" color: #3366aa; font-weight: 500;   "&gt;VueUse 15.0&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📖  Articles and Videos&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190662/rss" title="www.wired.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;An Undercover Analyst Infiltrated the Gang Behind 'Mini Shai-Hulud'&lt;/a&gt;&lt;/span&gt; — Bad news for the group behind this spring's cascading supply chain attacks… Google had a mole in their group chat! WIRED explains how the group was monitored and disrupted, leading to &lt;a href="https://javascriptweekly.com/link/190663/rss" style=" color: #3366aa;   "&gt;two recent arrests&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Andy Greenberg (WIRED) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190664/rss" title="soatok.blog" style=" color: #3366aa;    font-size: 1.05em;"&gt;The V8 Runtime Undermined My Constant-Time JavaScript Library&lt;/a&gt;&lt;/span&gt; — A look at how even branchless JavaScript can leak secrets through CPU cache behavior, due to quirks in how V8 handles booleans and &lt;code&gt;-0&lt;/code&gt;.&lt;/p&gt;
  &lt;p&gt;Soatok Dreamseeker &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190665/rss" title="www.tigerdata.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Your UI Isn't Slow. It's Waiting on the Data&lt;/a&gt;&lt;/span&gt; — TimescaleDB extends Postgres so the data behind your UI loads fast as it grows. &lt;a href="https://javascriptweekly.com/link/190665/rss" style=" color: #3366aa;   "&gt;Get $1000 credit to start&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Tiger Data (creators of TimescaleDB) &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190666/rss" title="brookslybrand.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Do Frameworks Matter Anymore?&lt;/a&gt;&lt;/span&gt; — If you're using AI, you're either using a framework or your agent is building an ad-hoc one on the fly. A Remix team member argues that's a good reason to &lt;em&gt;want&lt;/em&gt; frameworks, and &lt;em&gt;better&lt;/em&gt; ones, too.&lt;/p&gt;
  &lt;p&gt;Brooks Lybrand &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/190668/rss" style=" color: #3366aa; font-weight: 500;   "&gt;We Are All Product Engineers Now&lt;/a&gt; – Laurie argues that understanding what customers need becomes a core developer skill. &lt;cite&gt;Laurie Voss&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📺 &lt;a href="https://javascriptweekly.com/link/190667/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Is AI Changing How JavaScript Itself Gets Designed?&lt;/a&gt; – A 2-minute take from TC39 delegate Michael Ficarra. &lt;cite&gt;JetBrains&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/190669/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Solid 2.0: It's the Little Things&lt;/a&gt; – Six touches that change how &lt;a href="https://javascriptweekly.com/link/190670/rss" style=" color: #3366aa; font-weight: 500;   "&gt;SolidJS 2.0&lt;/a&gt; feels. &lt;cite&gt;Brenley Dueck&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/190671/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How Notion Handles Concurrent Editing with CRDTs&lt;/a&gt;  &lt;cite&gt;Nehmzow and Guo (Notion)&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190672/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/xuy1lcdg0vlkmjacpeux.jpg" width="640" style="        line-height: 100%;  "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190672/rss" title="plotly.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Plotly.js 4: A Big Update for the Popular Charting Library&lt;/a&gt;&lt;/span&gt; — Now ships its own TypeScript types, adds ‘quiver’ plots &lt;em&gt;(above)&lt;/em&gt; for drawing vector fields (with many awesome examples in the post), accepts CSS Color 4 color strings, and removes Mapbox GL in favor of MapLibre (no token needed!)&lt;/p&gt;
  &lt;p&gt;Chris Parmer &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;🤖&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/190673/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Transformers.js v4.3: Run AI Models in the Browser&lt;/a&gt;&lt;/span&gt; — Adds support for structured output (e.g. JSON), using WebGPU on Safari 26+, and DeepSeek v4. &lt;a href="https://javascriptweekly.com/link/190674/rss" style=" color: #3366aa;   "&gt;The docs&lt;/a&gt; have had an overhaul and there’s now an &lt;a href="https://javascriptweekly.com/link/190675/rss" style=" color: #3366aa;   "&gt;agent skill&lt;/a&gt; you can use.&lt;/p&gt;
  &lt;p&gt;Hugging Face &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 Hugging Face also released &lt;a href="https://javascriptweekly.com/link/190676/rss" style=" color: #3366aa; font-weight: 500;"&gt;a collection of 207 Apache-2.0 WebGPU kernels&lt;/a&gt; — matmul, attention and quantization ops for your own runtime.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190677/rss" title="www.meticulous.ai" style=" color: #3366aa;    font-size: 1.05em;"&gt;Still Writing Tests Manually? Meticulous AI Is Here&lt;/a&gt;&lt;/span&gt; — Flaky tests slowing down dev? Meticulous gives engineers confidence to ship faster by autonomously testing every edge case of your web app.&lt;/p&gt;
  &lt;p&gt;Meticulous &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190678/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;&lt;code&gt;@shadcn/lint&lt;/code&gt;: An Agent-First Linter for Tailwind&lt;/a&gt;&lt;/span&gt; — An ESLint/Oxlint plugin to enforce rules like &lt;em&gt;"no raw colors"&lt;/em&gt; and &lt;em&gt;"no restyling &lt;code&gt;&amp;lt;Button&amp;gt;&lt;/code&gt; from outside"&lt;/em&gt; with errors to steer agents back to your variants and tokens.&lt;/p&gt;
  &lt;p&gt;shadcn &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/190679/rss" title="devfra.me" style=" color: #3366aa;    font-size: 1.05em;"&gt;Devframe: A Framework for Building DevTools That Run Anywhere&lt;/a&gt;&lt;/span&gt; — From the developer behind Vitest and Nuxt DevTools, &lt;em&gt;"a framework for building DevTools, in the same way Nuxt or Next.js provides a framework [for web apps]"&lt;/em&gt;. Define a tool once and Devframe turns it into a Web Standard request handler you can mount almost anywhere.&lt;/p&gt;
  &lt;p&gt;Anthony Fu &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;✉️&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/190680/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Mailflare: A Self-Hosted Inbox Built Entirely on Cloudflare&lt;/a&gt;&lt;/span&gt; — A self-hosted inbox for custom domains built on Cloudflare’s Email Routing, Workers, D1 and R2. AGPL 3.0 licensed.&lt;/p&gt;
  &lt;p&gt;Hieu Nguyen &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190681/rss" style=" color: #3366aa; font-weight: 500;   "&gt;gridstack.js 14.0&lt;/a&gt; – The popular drag-and-drop dashboard layout library adds a &lt;code&gt;list&lt;/code&gt; mode that reflows widgets like a reorderable list. (&lt;a href="https://javascriptweekly.com/link/190682/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Demos&lt;/a&gt;.)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🖼️ &lt;a href="https://javascriptweekly.com/link/190683/rss" style=" color: #3366aa; font-weight: 500;   "&gt;image-dimensions 2.6&lt;/a&gt; – Quickly get an image's dimensions by reading the least amount of data.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190684/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Feedsmith 3.0&lt;/a&gt; – A fast way to parse and generate web feeds, including RSS, Atom, and JSON.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
	&lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190685/rss" style=" color: #3366aa; font-weight: 500;   "&gt;A developer's guide to adding eSignature to your app with an API&lt;/a&gt;: How signing workflows and embedded signing work, and the core steps to add signing to your product with Foxit.&lt;/p&gt;
 
&lt;p&gt;🧩 CAPTCHA was built for a different internet. Replace it with invisible bot detection with a few lines of code. &lt;a href="https://javascriptweekly.com/link/190696/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Try Fingerprint for free&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;Meet &lt;a href="https://javascriptweekly.com/link/190687/rss" style=" color: #3366aa; font-weight: 500;   "&gt;chat.agent on Trigger.dev&lt;/a&gt;: durable AI agents built with the AI SDK you already use. Long-lived LLM sessions that survive deploys, crashes &amp;amp; refreshes.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📢  Elsewhere in the ecosystem&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://javascriptweekly.com/link/190688/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ybmk2nasvvasjcjmkclc.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;I love these &lt;a href="https://javascriptweekly.com/link/190688/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pure CSS 'hand drawn' annotations&lt;/a&gt; &lt;em&gt;(above)&lt;/em&gt; you can add to any page in a &lt;code&gt;data-note&lt;/code&gt; attribute.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cloudflare's Sunil Pai writes about &lt;a href="https://javascriptweekly.com/link/190689/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the senior engineer 'death spiral'&lt;/a&gt;, where you go dark for weeks to prove yourself in a new role and end up burning out.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 Simon Willison &lt;a href="https://javascriptweekly.com/link/190690/rss" style=" color: #3366aa; font-weight: 500;   "&gt;writes about Jev&lt;/a&gt;, a new, fast 'decision model' taking developer social media by storm. Feed it semi-structured state and one or more questions and you get only numbers back (probabilities, choices and scores).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GitHub Actions has &lt;a href="https://javascriptweekly.com/link/190691/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a new &lt;code&gt;cache-mode&lt;/code&gt; setting&lt;/a&gt; to limit cache access per workflow or job, a defence against the kind of cache poisoning that &lt;a href="https://javascriptweekly.com/link/190692/rss" style=" color: #3366aa; font-weight: 500;   "&gt;compromised TanStack's npm packages in May&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://javascriptweekly.com/open/803/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 22 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/803</guid>
    </item>
  </channel>
</rss>
