<?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>When 8 chunks weigh more than 355</title>
      <link>https://javascriptweekly.com/issues/801</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;#​801 — September 8, 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/190038/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/189987/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/wq9zwktpt9rxrly3oo74.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/189987/rss" title="nextjs.org" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;How Turbopack Chunks Your JavaScript&lt;/a&gt;&lt;/span&gt; — Starting from the &lt;em&gt;Network&lt;/em&gt; tab and working up, a look at chunking strategy and the tradeoffs bundlers make between fewer requests and less code (e.g. 8 chunks can weigh more than 355 do), backed by numbers from bundling the official Next.js site itself.&lt;/p&gt;
  &lt;p&gt;Sam Poder &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/189986/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/d1dbac0d.png" width="160" height="38" 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/189986/rss" title="www.greptile.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Catch Runtime Bugs Before Your JS PR Merges&lt;/a&gt;&lt;/span&gt; — Greptile now runs your code to find bugs. T-Rex runs your PR branch in a sandbox, uses browser agents to click through your UI, and attaches screenshots and videos as evidence of the issue directly in the PR.&lt;/p&gt;
  &lt;p&gt;Greptile &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/189988/rss" title="vitest.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Vitest 5.0 Focuses on Speed and Test Debugging&lt;/a&gt;&lt;/span&gt; — A major release for the Vite-native test runner, with a benchmark repo showing up to 53% faster runs on dependency-heavy apps. The new &lt;a href="https://javascriptweekly.com/link/189989/rss" style=" color: #3366aa;   "&gt;Trace View&lt;/a&gt; replays &lt;em&gt;Browser Mode&lt;/em&gt; tests step by step, and &lt;a href="https://javascriptweekly.com/link/189990/rss" style=" color: #3366aa;   "&gt;&lt;code&gt;vitest doctor&lt;/code&gt;&lt;/a&gt; recommends settings to make your suite run faster.&lt;/p&gt;
  &lt;p&gt;Vitest 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/189991/rss" title="webkit.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;How Safari Fixed Top-Level &lt;code&gt;await&lt;/code&gt;&lt;/a&gt;&lt;/span&gt; — Safari's module loader was originally built on an abandoned spec proposal and adding top-level &lt;code&gt;await&lt;/code&gt; caused years of &lt;em&gt;"cannot access before initialization"&lt;/em&gt; errors. Safari 27 brings full spec compliance for it, but it took a ground-up rewrite and this post explains the complexity.&lt;/p&gt;
  &lt;p&gt;Kai Tamkun (WebKit) &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;🎂 &lt;a href="https://javascriptweekly.com/link/189992/rss" style=" color: #3366aa; font-weight: 500;   "&gt;jQuery 1.0 is 20 years old&lt;/a&gt;. InfoQ looks back at how &lt;code&gt;$()&lt;/code&gt; helped us dodge the browser wars and why many sites still use it. Ten years further back, &lt;a href="https://javascriptweekly.com/link/189993/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Microsoft shipped JavaScript in &lt;em&gt;Internet Explorer&lt;/em&gt;&lt;/a&gt; as &lt;a href="https://javascriptweekly.com/link/189994/rss" style=" color: #3366aa; font-weight: 500;   "&gt;JScript&lt;/a&gt; to dodge trademark issues.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189995/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Two men have been arrested over the TeamPCP npm supply chain attacks&lt;/a&gt;. TeamPCP is suspected of cloning the Shai-Hulud worm, resulting in the &lt;a href="https://javascriptweekly.com/link/189996/rss" style=" color: #3366aa; font-weight: 500;   "&gt;'Mini Shai-Hulud'&lt;/a&gt; waves.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189997/rss" style=" color: #3366aa; font-weight: 500;   "&gt;VoidZero's latest update&lt;/a&gt; celebrates Vitest passing 100m weekly downloads, React Compiler support reaching Vite, and the latest on Rolldown, Vite+ and &lt;a href="https://javascriptweekly.com/link/189998/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ViteConf&lt;/a&gt; (taking place online this October 15th).&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/189999/rss" style=" color: #3366aa; font-weight: 500;   "&gt;deck.gl 9.4&lt;/a&gt; – The GPU-powered data visualization library extends its experimental WebGPU support in what's expected to be the final v9 release.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190000/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Bun 1.4.1&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/190001/rss" style=" color: #3366aa; font-weight: 500;   "&gt;1.4.2&lt;/a&gt; – Big idle memory usage drops, smaller &lt;code&gt;bun build&lt;/code&gt; bundles, &lt;code&gt;Bun.serve&lt;/code&gt; speaks HTTP/2 on the same port as HTTP/1.1, and more.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190002/rss" style=" color: #3366aa; font-weight: 500;   "&gt;NVM for Windows 2.0&lt;/a&gt; – A Node version manager for Windows. No longer needs admin privileges in v2.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190003/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Astro 7.3&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190004/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ESLint 10.10.0&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190005/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Storybook 10.6&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/190006/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vuetify 4.2&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/190007/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ayffabov5k9i9tii8xeb.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/190007/rss" title="www.youtube.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Story of VS Code&lt;/a&gt;&lt;/span&gt; — An official movie-length documentary on &lt;a href="https://javascriptweekly.com/link/190008/rss" style=" color: #3366aa;   "&gt;Visual Studio Code&lt;/a&gt;'s journey from a Swiss skunkworks to now. Its founding engineers cover the decisions made in areas like Electron, LSP, and the extension API, plus candid talk about the various forks now springing up.&lt;/p&gt;
  &lt;p&gt;Microsoft and Stefan Kingham &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;😅 We also learn that at the 2015 launch they drank a beer per 100 Hacker News upvotes… and had to stop at 1,400 (votes, not beers!)&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/190009/rss" title="blog.gaborkoos.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Half Past Fetch: What &lt;code&gt;await fetch()&lt;/code&gt; Waits For&lt;/a&gt;&lt;/span&gt; — Did you know &lt;code&gt;await fetch(url)&lt;/code&gt; waits for the headers, not the full body? Gabor digs into some surprising consequences of that for connections, &lt;code&gt;clone()&lt;/code&gt;, aborts, and timeouts.&lt;/p&gt;
  &lt;p&gt;Gábor Koós &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/190010/rss" title="wallabyjs.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Your AI Writes Tests That Pass but Prove Nothing. Fix It&lt;/a&gt;&lt;/span&gt; — Wallaby CLI makes test generation 10x smarter with live coverage and runtime data, using 3x fewer tokens. &lt;a href="https://javascriptweekly.com/link/190010/rss" style=" color: #3366aa;   "&gt;One skill to install&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Wallaby Team &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/190011/rss" title="evilmartians.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;10 Anti-'Slop' Moves for Frontend Projects&lt;/a&gt;&lt;/span&gt; — A walkthrough of automated checks that cut how much code you have to review, covering OpenAPI codegen, layer boundaries, mutation testing, and using CI to make it all stick.&lt;/p&gt;
  &lt;p&gt;Yuri Mikhin (Evil Martians) &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/190012/rss" title="kciter.so" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Browser's Main Thread is Expensive&lt;/a&gt;&lt;/span&gt; — A thorough look, complete with demos, at spending your main thread time well, including splitting, batching, prioritizing, and deferring tasks, then getting work off it entirely.&lt;/p&gt;
  &lt;p&gt;Lee Sun-Hyoup &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/190013/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Why I Ported Moonshine to JavaScript&lt;/a&gt; – Pete’s low-latency speech to text runtime now runs in the browser to avoid round trips to a server. &lt;cite&gt;Pete Warden&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📺 &lt;a href="https://javascriptweekly.com/link/190014/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How Can Someone Actually Change JavaScript?&lt;/a&gt; – A 2-minute explainer from a TC39 delegate. &lt;cite&gt;Mikhail Barash&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/190015/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/jtleeynffjs0yrixzyqg.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/190015/rss" title="www.dropzone.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Dropzone.js 6.x: The Drag and Drop Uploader Returns&lt;/a&gt;&lt;/span&gt; — A major update for the library that handles the browser side of drag and drop uploading. After a 5 year(!) beta, v6.0, 6.1, and 6.2 landed over two days, bringing no dependencies, smaller bundles, and fixes for chunked uploads that could corrupt files.&lt;/p&gt;
  &lt;p&gt;Mat Simon &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/190016/rss" title="rslib.rs" style=" color: #3366aa;    font-size: 1.05em;"&gt;Rslib 1.0: A Build Tool for Shipping JavaScript Libraries&lt;/a&gt;&lt;/span&gt; — From the Rspack team, a unified build pipeline that handles the irritating parts of publishing packages, like getting ESM and CJS working side by side, Module Federation output, and component CSS across React, Vue, Svelte and Solid.&lt;/p&gt;
  &lt;p&gt;Chenwei Dai, Elecmonkey, et al. &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/190017/rss" title="jobs.fidelity.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Balance build time with your time&lt;/a&gt;&lt;/span&gt; — Our technologists do meaningful work, and we give them the support to have a meaningful life, too.&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/190018/rss" title="vgpu.sh" style=" color: #3366aa;    font-size: 1.05em;"&gt;vgpu: Render WebGPU Shaders in the Browser or Node.js&lt;/a&gt;&lt;/span&gt; — Provides a way to use the same shader in the browser or render headlessly with Node (to a high-resolution PNG or MP4 video). WGSL modules import and export like TypeScript does.&lt;/p&gt;
  &lt;p&gt;Vercel &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/190019/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;SimpleWebAuthn 14.0: Now with Post-Quantum Passkeys&lt;/a&gt;&lt;/span&gt; — The passkeys library now verifies post-quantum ML-DSA passkeys and, on Node 24.7 and up, prefers ML-DSA-44 at registration by default.&lt;/p&gt;
  &lt;p&gt;Matthew Miller &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/190020/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ESLint Config Inspector 3.4&lt;/a&gt; – Adds timing analysis making it easier to identify the rules slowing down your lint runs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190021/rss" style=" color: #3366aa; font-weight: 500;   "&gt;GPUIX 0.7&lt;/a&gt; – Build native GPU-accelerated desktop apps with React and TypeScript atop the framework used by &lt;a href="https://javascriptweekly.com/link/190022/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Zed&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190023/rss" style=" color: #3366aa; font-weight: 500;   "&gt;memlab 2.0.5&lt;/a&gt; – Meta's framework for finding memory leaks in both browser and Node.js JavaScript apps.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🎵 &lt;a href="https://javascriptweekly.com/link/190024/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Astro LilyPond&lt;/a&gt; – Build-time rendering of text to musical notation for Astro.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 &lt;a href="https://javascriptweekly.com/link/190025/rss" style=" color: #3366aa; font-weight: 500;   "&gt;vue-echarts 8.3&lt;/a&gt; – Vue.js component for Apache ECharts.&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/190026/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Join Fingerprint on Sept 16&lt;/a&gt;. Learn how to stop fake signups with Device Intelligence, and build protection that works, for free.&lt;/p&gt;
 
&lt;p&gt;Flaky tests slowing down dev? &lt;a href="https://javascriptweekly.com/link/190027/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Meticulous&lt;/a&gt; gives engineers confidence to ship faster by autonomously testing every edge case of your web app.&lt;/p&gt;
 
&lt;p&gt;Charts crawling as your data grows? &lt;a href="https://javascriptweekly.com/link/190028/rss" style=" color: #3366aa; font-weight: 500;   "&gt;TimescaleDB&lt;/a&gt; extends Postgres to stay fast at scale, straight from live data. &lt;a href="https://javascriptweekly.com/link/190028/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Get $1000 credit&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;/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/190029/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/r4xavp1sxq6ebnecqxkd.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;✨ GitHub has &lt;a href="https://javascriptweekly.com/link/190030/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a new privacy-safe star history API&lt;/a&gt;, so charting a repo's growth over time no longer means scraping or approximating it. &lt;a href="https://javascriptweekly.com/link/190031/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Star-History&lt;/a&gt; shares &lt;a href="https://javascriptweekly.com/link/190032/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a little more background&lt;/a&gt; and you can use it to chart projects' star counts, as above (&lt;a href="https://javascriptweekly.com/link/190029/rss" style=" color: #3366aa; font-weight: 500;   "&gt;for example&lt;/a&gt;).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Robin Wieruch argues that, due to the advent of agentic coding, &lt;a href="https://javascriptweekly.com/link/190033/rss" style=" color: #3366aa; font-weight: 500;   "&gt;building things from primitives rather than high-level libraries&lt;/a&gt; makes more sense, using D3 vs Recharts as an example.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/190034/rss" style=" color: #3366aa; font-weight: 500;   "&gt;You don't need &lt;code&gt;initial-scale=1.0&lt;/code&gt; in your viewport meta tag&lt;/a&gt;, claims Declan Chidlow, as it worked around quirks in old versions of iOS.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Got a browser-compatibility pain point? &lt;a href="https://javascriptweekly.com/link/190035/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Submit it as an Interop 2027 idea&lt;/a&gt; (by September 23).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;👕 TIL you can &lt;a href="https://javascriptweekly.com/link/190036/rss" style=" color: #3366aa; font-weight: 500;   "&gt;buy official Vue.js merch&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/801/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 8 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/801</guid>
    </item>
    <item>
      <title>How to fit Minesweeper into 247 bytes</title>
      <link>https://javascriptweekly.com/issues/800</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;#​800 — September 1, 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/189716/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; padding: 0px 15px;"&gt;&lt;p&gt;&lt;b&gt;Issue 800!&lt;/b&gt; I'm not doing anything to celebrate, but I know many of you have been here for &lt;em&gt;years&lt;/em&gt;, so thanks for your continued support. Maybe I'll do something for issue 1000, though at current velocity that'll be late 2030... ;-)&lt;br&gt;__&lt;br&gt;&lt;em&gt;Your editor, Peter Cooper&lt;/em&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/189671/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/bx17eefknqp64qnr1fet.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/189671/rss" title="yui.dev" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;The Depths of JavaScript: Minesweeper in 247 Bytes&lt;/a&gt;&lt;/span&gt; — An analysis of a playable 8x8 Minesweeper implementation in one line of JavaScript, complete with flags and cascading blank cells. The author's 658-byte version is impressive enough, but this post covers the tricks to make it 62% smaller than that!&lt;/p&gt;
  &lt;p&gt;yui and DNEK &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/189670/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/8de3904f.png" width="160" height="91" 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/189670/rss" title="coderabbit.link" style=" color: #3366aa;    font-size: 1.05em;"&gt;Stop Reviewing PRs in the Order They Arrived. Review in the Order That Matters&lt;/a&gt;&lt;/span&gt; — CodeRabbit Triage is a reviewer-first prioritization layer for the PR queue: a self-updating, cross-repository inbox that tells you which pull request to review next, how deeply to review it and which ones may be safe to close.&lt;/p&gt;
  &lt;p&gt;CodeRabbit &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/189717/rss" title="remix.run" style=" color: #3366aa;    font-size: 1.05em;"&gt;Remix 3 RC: A Full-Stack Framework with No React Required&lt;/a&gt;&lt;/span&gt; — Remix's big rewrite from its previous life as a React framework into an independent full-stack framework is largely done. This post makes a good pitch, but even better is the &lt;a href="https://javascriptweekly.com/link/189718/rss" style=" color: #3366aa;   "&gt;all-new homepage&lt;/a&gt; explaining how Remix offers everything you need to build a modern webapp in 'a single package'.&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;💡 The final release is due on October 2 but it's more than ready to start working with.&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/189672/rss" title="pnpm.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;pnpm 12: Rewritten in Rust, Same Commands and Lockfile&lt;/a&gt;&lt;/span&gt; — The Rust rewrite is stable, and nearly all of v11's commands, flags and lockfile format carry over with only a &lt;a href="https://javascriptweekly.com/link/189673/rss" style=" color: #3366aa;   "&gt;handful of changes&lt;/a&gt;. npm's &lt;code&gt;latest&lt;/code&gt; tag still points to pnpm 11, though, so you'd need &lt;code&gt;pnpm self-update next-12&lt;/code&gt; to upgrade.&lt;/p&gt;
  &lt;p&gt;Zoltan Kochan &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;TypeScript has &lt;a href="https://javascriptweekly.com/link/189719/rss" style=" color: #3366aa; font-weight: 500;   "&gt;landed support for import-attribute-aware ambient modules&lt;/a&gt;. Declarations such as  &lt;code&gt;declare module "*" with { type: "css" }&lt;/code&gt; can now match imports carrying that attribute.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Dani Sandoval rounds up &lt;a href="https://javascriptweekly.com/link/189676/rss" style=" color: #3366aa; font-weight: 500;   "&gt;what's new in the Svelte world this month&lt;/a&gt; including Svelte 5.57's new &lt;code&gt;SvelteMap&lt;/code&gt; methods, SvelteKit 3 reaching RC, and an &lt;code&gt;ai-tools&lt;/code&gt; add-on for the &lt;code&gt;sv&lt;/code&gt; CLI.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Sarah Rainsberger rounds up &lt;a href="https://javascriptweekly.com/link/189677/rss" style=" color: #3366aa; font-weight: 500;   "&gt;what's new in Astro this month&lt;/a&gt; too, including Matthew Phillips taking over as 'Project Steward', and a new &lt;a href="https://javascriptweekly.com/link/189729/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Astro Playground&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;a href="https://javascriptweekly.com/link/189678/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Rspack 2.2, Rsbuild 2.2, and Rslint 0.9&lt;/a&gt; – Faster builds and HMR, shorter module IDs, and Node.js chunk splitting on by default in Rsbuild. Notably, Rslint now implements all rules and presets from &lt;code&gt;@typescript-eslint&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189720/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Cypress 16&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189681/rss" style=" color: #3366aa; font-weight: 500;   "&gt;NestJS 12&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189682/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vue 3.6 RC6&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189683/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Deno 2.9.6&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189684/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Mocha 12.0&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189685/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Electron 44&lt;/a&gt; (mentioned last week but there's now an official post).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189686/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js v26.8.0 (Current)&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/189687/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js v24.20.0 (LTS)&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/189691/rss" title="resend.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Browser's New Email Verification API&lt;/a&gt;&lt;/span&gt; — A look at a WICG proposal to get rid of the 'go and check your inbox' headache with the browser and email provider using a token the server verifies on submit. Chrome origin trial and Gmail only for now.&lt;/p&gt;
  &lt;p&gt;Phil Nash &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/189692/rss" title="lovable.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Lovable's Migration from Next.js to TanStack Start&lt;/a&gt;&lt;/span&gt; — How Lovable migrated a ~850K LOC app from Next.js to TanStack Start while running both in parallel behind a proxy, with a shared folder of code between them.&lt;/p&gt;
  &lt;p&gt;Alexander Lebedev (Lovable) &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/189689/rss" title="svar.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;What We Learned Building a Data Grid in React, Vue, and Svelte&lt;/a&gt;&lt;/span&gt; — SVAR ships the same data grid for React, Vue and Svelte, and says the most crucial, performance-impacting elements remain the same whatever the framework.&lt;/p&gt;
  &lt;p&gt;Maksim Kozhukh (SVAR) &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/189693/rss" style=" color: #3366aa; font-weight: 500;   "&gt;The Problem with Concurrent Linter Fixes&lt;/a&gt; – Applying several autofixes at once can produce broken code that a "fix-then-reanalyze" loop wouldn't. &lt;cite&gt;Jeroen Engels&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/189694/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Bumping the Major Version of Your JavaScript Library is User Hostile&lt;/a&gt;  &lt;cite&gt;James Healy&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/189721/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/eo9krbjjdoksfuqz7faw.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/189721/rss" title="uppy.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Uppy 6.0: A Modular JavaScript File Uploader&lt;/a&gt;&lt;/span&gt; — Resumable uploads from disk, Dropbox or GDrive, with wrappers for React, Vue, Svelte &amp;amp; Angular. This version focuses on clean-up, with a rewritten S3 plugin and fewer packages to manage.&lt;/p&gt;
  &lt;p&gt;Transloadit &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/189722/rss" title="zod.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Zod 4.5: Faster Parsing, 9x Less Memory Per Schema&lt;/a&gt;&lt;/span&gt; — A big performance release for the popular TypeScript-first schema validation library. In a deep dive, Colin explains &lt;a href="https://javascriptweekly.com/link/189723/rss" style=" color: #3366aa;   "&gt;how method memoization helped cut&lt;/a&gt; a bare &lt;code&gt;z.string()&lt;/code&gt; from using 7.5KB of heap to just 784 bytes.&lt;/p&gt;
  &lt;p&gt;Colin McDonnell &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/189695/rss" title="try.expo.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Know JavaScript? You're Ready to Ship a Mobile App&lt;/a&gt;&lt;/span&gt; — Your React skills already ship mobile apps. Expo does the builds, store submission, and updates. No Xcode.&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/189724/rss" title="four.htmx.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;htmx 4.0: The Anti-SPA Library's First Major Release in Two Years&lt;/a&gt;&lt;/span&gt; — The library that swaps HTML fragments into pages using nothing but attributes moves from &lt;code&gt;XMLHttpRequest&lt;/code&gt; to the Fetch API. Attribute inheritance is now opt-in, events have been standardized/renamed, and &lt;a href="https://javascriptweekly.com/link/189725/rss" style=" color: #3366aa;   "&gt;morphing swaps&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/189726/rss" style=" color: #3366aa;   "&gt;&lt;code&gt;&amp;lt;hx-partial&amp;gt;&lt;/code&gt;&lt;/a&gt; are new features. There's a full &lt;a href="https://javascriptweekly.com/link/189727/rss" style=" color: #3366aa;   "&gt;what's new in htmx 4 guide&lt;/a&gt; too.&lt;/p&gt;
  &lt;p&gt;Carson Gross &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're new to htmx, &lt;a href="https://javascriptweekly.com/link/189728/rss" style=" color: #3366aa; font-weight: 500;"&gt;this page of patterns for common use cases&lt;/a&gt; provides a great hands-on introduction.&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/189696/rss" title="sveltebits.xyz" style=" color: #3366aa;    font-size: 1.05em;"&gt;Svelte Bits: Animated UI Components for Svelte&lt;/a&gt;&lt;/span&gt; — A Svelte port of &lt;a href="https://javascriptweekly.com/link/189697/rss" style=" color: #3366aa;   "&gt;React Bits&lt;/a&gt; (by the same creator), the popular suite of animation components for React.&lt;/p&gt;
  &lt;p&gt;David Haz &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/189700/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Schedule-X 4.7&lt;/a&gt; – Large, schedule-style calendar control for React, Vue, Angular, Svelte and Preact apps.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189680/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Mantine 9.6&lt;/a&gt; – Popular, extensive React component suite. Adds a new media 'lightbox' component and more.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🖼️ &lt;a href="https://javascriptweekly.com/link/189701/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Cropper.js 2.2&lt;/a&gt; – A mature image cropping control with &lt;a href="https://javascriptweekly.com/link/189702/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a playground&lt;/a&gt; where you can give it a spin.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189703/rss" style=" color: #3366aa; font-weight: 500;   "&gt;noble-curves 2.4&lt;/a&gt; – Audited, minimal JS implementation of elliptic curve cryptography.&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/189705/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Zuplo&lt;/a&gt; puts every API, AI, and MCP request behind one gateway. Route traffic, guard your MCP servers, and cap your AI costs. &lt;a href="https://javascriptweekly.com/link/189705/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Try it free&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;📄 Turn messy PDFs into structured JSON. &lt;a href="https://javascriptweekly.com/link/189706/rss" style=" color: #3366aa; font-weight: 500;   "&gt;See how Foxit’s Structural Extraction API&lt;/a&gt; preserves tables, fields, and layout in four REST calls.&lt;/p&gt;
 
&lt;p&gt;Flaky tests slowing down dev? &lt;a href="https://javascriptweekly.com/link/189707/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Meticulous&lt;/a&gt; gives engineers confidence to ship faster by autonomously testing every edge case of your web app.&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;🤖 Addy Osmani says &lt;a href="https://javascriptweekly.com/link/189708/rss" style=" color: #3366aa; font-weight: 500;   "&gt;mastery still comes from 'doing the reps'&lt;/a&gt;, and that agents finishing tasks for you means building expertise has to be a more deliberate act.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;∑ &lt;a href="https://javascriptweekly.com/link/189709/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Lean&lt;/a&gt;, a language for writing machine-checked mathematical proofs, has a verifier that's "just" a type checker, so here's &lt;a href="https://javascriptweekly.com/link/189710/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the concept demonstrated in TypeScript&lt;/a&gt; instead!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🚫 &lt;a href="https://javascriptweekly.com/link/189711/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Google has removed all remaining Manifest V2 extensions from the Chrome Web Store&lt;/a&gt;… uBlock Origin included.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AWS Lambda has introduced &lt;a href="https://javascriptweekly.com/link/189713/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a new Node.js 26 runtime in preview&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;A detailed look at many of the things that &lt;a href="https://javascriptweekly.com/link/189714/rss" style=" color: #3366aa; font-weight: 500;   "&gt;should go in a modern HTML boilerplate&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/800/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 1 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/800</guid>
    </item>
    <item>
      <title>Bun 1.4 is (finally) fresh out of the oven</title>
      <link>https://javascriptweekly.com/issues/799</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;#​799 — August 25, 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/189396/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; padding: 0px 15px;"&gt;&lt;p&gt;🏖️ I'm back from an intense week of Disney vacationing with the family, so I feel more tired than before I left 😅… but it's time to catch up with all things JavaScript! &lt;br&gt;__&lt;br&gt;&lt;em&gt;Your editor, Peter Cooper&lt;/em&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/189397/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/jgkycdtzpabaibtigxfp.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/189397/rss" title="bun.com" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Bun 1.4: Now More Node.js Compatible Than Ever&lt;/a&gt;&lt;/span&gt; — Several weeks after it was initially expected to launch, Bun's &lt;a href="https://javascriptweekly.com/link/189398/rss" style=" color: #3366aa;   "&gt;big AI-powered rewrite from Zig to Rust&lt;/a&gt; is here, complete with traditional &lt;a href="https://javascriptweekly.com/link/189399/rss" style=" color: #3366aa;   "&gt;▶️ release video&lt;/a&gt;. A lot of effort has been put into compatibility, not just with Node, but Next.js, Playwright, Vitest, and Nuxt too. Throughput and CPU/memory usage also see huge improvements.&lt;/p&gt;
  &lt;p&gt;The Bun 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;☕ Grab the biggest coffee you can if you intend to get through the release post. It's easily the longest I've ever seen in fifteen years of running this newsletter.&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/189348/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/89dbfa4d.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/189348/rss" title="developers.webflow.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Webflow for Developers&lt;/a&gt;&lt;/span&gt; — Most tools make you choose between visual builders and real code. Webflow gives you both: APIs, SDKs, Code Components, and Webflow Cloud to deploy custom apps, plus an MCP server to build with agents.&lt;/p&gt;
  &lt;p&gt;Webflow &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;span&gt;🎵&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/189349/rss" title="runjs.app" style=" color: #3366aa;    font-size: 1.05em;"&gt;Music Theory for JavaScript Developers&lt;/a&gt;&lt;/span&gt; — A from-first-principles tour of music theory, deriving the twelve notes, scales, chords and progressions from plain arithmetic, with runnable Web Audio examples throughout.&lt;/p&gt;
  &lt;p&gt;Luke Haas &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/189400/rss" title="www.solidjs.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Solid 2.0 RC: The Big &amp;lt;Reveal&amp;gt;&lt;/a&gt;&lt;/span&gt; — Async now lives in the reactive graph, so async data flows through ordinary memos. &lt;code&gt;createResource&lt;/code&gt;, &lt;code&gt;batch&lt;/code&gt; and &lt;code&gt;startTransition&lt;/code&gt; are gone. SolidStart gets retired into a &lt;code&gt;start: true&lt;/code&gt; flag on the Vite plugin, and the API is now frozen.&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;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Aurora Scharff shows off &lt;a href="https://javascriptweekly.com/link/189350/rss" style=" color: #3366aa; font-weight: 500;   "&gt;how Next.js 16.3 helps developers build 'app-like' experiences&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Aviv Keller presents &lt;a href="https://javascriptweekly.com/link/189401/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a recap of everything from Node.js Interactive 2026&lt;/a&gt; which took place in Atlanta two weeks ago.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 &lt;a href="https://javascriptweekly.com/link/189351/rss" style=" color: #3366aa; font-weight: 500;   "&gt;TanStack AI has entered its RC phase&lt;/a&gt; with a look at the journey so far and its main feature set.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Oxlint has &lt;a href="https://javascriptweekly.com/link/189402/rss" style=" color: #3366aa; font-weight: 500;   "&gt;gained React Compiler support&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;a href="https://javascriptweekly.com/link/189353/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Electron 44&lt;/a&gt; – No post yet, but it has dropped 32-bit support, requires macOS 13+, &lt;code&gt;clipboard&lt;/code&gt; is now aligned with the W3C Clipboard API, and added &lt;code&gt;net.WebSocket&lt;/code&gt; and the ability to set window opacity on Linux.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189354/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Waku 1.0 RC&lt;/a&gt; – Minimal RSC-first React framework, now API-frozen ahead of v1 final, adding type-safe navigation that catches bad routes at compile time and experimental instant paints from cached route shells.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189403/rss" style=" color: #3366aa; font-weight: 500;   "&gt;SvelteKit 3 Release Candidate&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189355/rss" style=" color: #3366aa; font-weight: 500;   "&gt;React Native 0.87&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189356/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ESLint 10.9&lt;/a&gt; (and &lt;a href="https://javascriptweekly.com/link/189357/rss" style=" color: #3366aa; font-weight: 500;   "&gt;10.9.1&lt;/a&gt;), &lt;a href="https://javascriptweekly.com/link/189358/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Axios 1.20.0&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189359/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pnpm 11.23&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/189361/rss" title="infrequently.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Wicked Reason Removing Code Beats Better Scheduling&lt;/a&gt;&lt;/span&gt; — A lot of performance work goes into shuffling when things load, when the bigger win is usually not sending the code at all. Alex Russell makes the case that this is a management problem more than a technical one.&lt;/p&gt;
  &lt;p&gt;Alex Russell &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/189362/rss" title="blog.gaborkoos.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;ESM and CommonJS: What &lt;code&gt;import&lt;/code&gt; and &lt;code&gt;require&lt;/code&gt; Actually Do&lt;/a&gt;&lt;/span&gt; — They look like the same operation, but Gabor shows how an ESM &lt;code&gt;import&lt;/code&gt; stays wired to the exporter's binding, while a destructured &lt;code&gt;require()&lt;/code&gt; only holds a &lt;em&gt;copy&lt;/em&gt;. The consequences show up in circular dependencies and published packages.&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;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/189363/rss" title="jobs.fidelity.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Build with Strategy. Lead with Curiosity&lt;/a&gt;&lt;/span&gt; — Fidelity is looking for technologists that ask questions, challenge conventions and care about the impact of their products.&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/189364/rss" title="blog.cloudflare.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;How Cloudflare Moved Its Blog to Its Own WordPress Alternative&lt;/a&gt;&lt;/span&gt; — How Cloudflare moved its main blog onto &lt;a href="https://javascriptweekly.com/link/189365/rss" style=" color: #3366aa;   "&gt;EmDash&lt;/a&gt;, the Astro CMS it's building. Interesting parts include the k6 load tests and using a proxy Worker to ramp up traffic during switchover.&lt;/p&gt;
  &lt;p&gt;Jackson, Carneiro, and Dutton (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;a href="https://javascriptweekly.com/link/189366/rss" style=" color: #3366aa; font-weight: 500;   "&gt;The Creator of TypeScript on 10x Faster TypeScript and Why AI Won't Replace SWEs&lt;/a&gt; – A candid hour-long interview with Microsoft's Anders Hejlsberg. &lt;cite&gt;Ryan Peterman&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/189367/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Hiding Internal State in TypeScript Objects&lt;/a&gt; – How a non-exported &lt;code&gt;unique symbol&lt;/code&gt; used as a property key keeps internal state out of &lt;code&gt;Object.keys&lt;/code&gt; and &lt;code&gt;JSON.stringify&lt;/code&gt;. &lt;cite&gt;Carlos Menezes&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/189368/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Reliable Query Prefetching with TanStack Router&lt;/a&gt;  &lt;cite&gt;Dominik Dorfmeister&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/189369/rss" style=" color: #3366aa; font-weight: 500;   "&gt;I Patched the TypeScript Compiler to Add Up Nine Numbers&lt;/a&gt; &lt;cite&gt;Hugo Vilela&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/189370/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/tcpdkzgmos3kjf4wj5mw.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/189370/rss" title="daverupert.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;MicroLighter: A 2KB Syntax Highlighter That Doesn't Touch the DOM&lt;/a&gt;&lt;/span&gt; — A small, client-side syntax highlighter that makes use of the &lt;a href="https://javascriptweekly.com/link/189371/rss" style=" color: #3366aa;   "&gt;CSS Custom Highlights API&lt;/a&gt;. No dependencies, and with themes for light and dark modes. The homepage has some &lt;a href="https://javascriptweekly.com/link/189372/rss" style=" color: #3366aa;   "&gt;live demos&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Dave Rupert &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/189373/rss" title="termdom.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;TermDOM: Build Terminal UIs with HTML, CSS and DOM&lt;/a&gt;&lt;/span&gt; — A real DOM and layout engine to paint to the terminal, so you can write a TUI with vanilla JS (or framework of choice) and HTML (not just React, as with &lt;a href="https://javascriptweekly.com/link/189374/rss" style=" color: #3366aa;   "&gt;Ink&lt;/a&gt;). This week's &lt;a href="https://javascriptweekly.com/link/189375/rss" style=" color: #3366aa;   "&gt;v0.1.5 release&lt;/a&gt; adds CSS grid support.&lt;/p&gt;
  &lt;p&gt;Brian Kim &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/189376/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 cluster.&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/189377/rss" title="formisch.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Formisch 1.0: Framework-Agnostic Schema-Based Form Library&lt;/a&gt;&lt;/span&gt; — A headless form library where a &lt;a href="https://javascriptweekly.com/link/189378/rss" style=" color: #3366aa;   "&gt;Valibot&lt;/a&gt; schema drives types and validation across eight frameworks. v1 adds Angular and React Native support, migration guides for TanStack Form/React Hook Form/Formik users, plus Markdown docs for agents.&lt;/p&gt;
  &lt;p&gt;Formisch 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/189379/rss" title="stryker-mutator.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Stryker Mutator 10.0: Test Your Tests with Mutation Testing&lt;/a&gt;&lt;/span&gt; — Stryker makes &lt;a href="https://javascriptweekly.com/link/189380/rss" style=" color: #3366aa;   "&gt;small, deliberate changes&lt;/a&gt; to your code and checks whether your test suite catches them. If it doesn't, your tests may be too lax and need work. Here's &lt;a href="https://javascriptweekly.com/link/189381/rss" style=" color: #3366aa;   "&gt;how to get started&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Jansen, de Lang, et al. &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/189382/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Ionic Framework v9&lt;/a&gt; – The mobile-first UI toolkit for React, Angular and Vue returns after a two-year gap with React Router 6 support, zoneless change detection in Angular 21+, and more. There's &lt;a href="https://javascriptweekly.com/link/189383/rss" style=" color: #3366aa; font-weight: 500;   "&gt;an upgrade guide for v8 users&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189384/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Papa Parse 5.7&lt;/a&gt; – Fast, flexible CSV-to-JSON and JSON-to-CSV library.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🌐 &lt;a href="https://javascriptweekly.com/link/189385/rss" style=" color: #3366aa; font-weight: 500;   "&gt;MapLibre GL JS 6.6&lt;/a&gt; – GPU-accelerated vector tile rendering library for interactive maps in the browser.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 &lt;a href="https://javascriptweekly.com/link/189386/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Plotly.js 4.0&lt;/a&gt; – Standalone library for creating interactive data visualizations.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189387/rss" style=" color: #3366aa; font-weight: 500;   "&gt;GTKX 1.3&lt;/a&gt; – Create native GTK-powered Linux desktop apps with React.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📺 &lt;a href="https://javascriptweekly.com/link/189388/rss" style=" color: #3366aa; font-weight: 500;   "&gt;YouTube.js 18.0&lt;/a&gt; – JavaScript client for YouTube's internal API.&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;📢  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;p&gt;Some other interesting tidbits in the broader landscape:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Last week the Next.js team &lt;a href="https://javascriptweekly.com/link/189389/rss" style=" color: #3366aa; font-weight: 500;   "&gt;did an AMA (Ask Me Anything) on Reddit&lt;/a&gt; and the thread is packed with answers and insights.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🖼️ Jake Archibald posts &lt;a href="https://javascriptweekly.com/link/189390/rss" style=" color: #3366aa; font-weight: 500;   "&gt;an update on Firefox's coming support for JPEG XL&lt;/a&gt; which Chrome is also planning to support soon.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 Gajus Kuizinas has put together a &lt;a href="https://javascriptweekly.com/link/189391/rss" style=" color: #3366aa; font-weight: 500;   "&gt;CSS-in-JS Arena&lt;/a&gt; comparing StyleX, Panda CSS and his own brand new &lt;a href="https://javascriptweekly.com/link/189392/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Bamboo CSS&lt;/a&gt; on the same React Router 8 app.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Did you know splitting a git commit &lt;a href="https://javascriptweekly.com/link/189393/rss" style=" color: #3366aa; font-weight: 500;   "&gt;is now a single command&lt;/a&gt; (in &lt;a href="https://javascriptweekly.com/link/189404/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Git 2.54+&lt;/a&gt;)? &lt;code&gt;git history split &amp;lt;ref&amp;gt;&lt;/code&gt; walks the change hunk by hunk and prompts for both messages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🕹️ &lt;a href="https://javascriptweekly.com/link/189394/rss" style=" color: #3366aa; font-weight: 500;   "&gt;An N64 emulator written in JavaScript&lt;/a&gt;. If you have a ROM file to use, you can &lt;a href="https://javascriptweekly.com/link/189405/rss" style=" color: #3366aa; font-weight: 500;   "&gt;play with it here&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/799/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 25 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/799</guid>
    </item>
    <item>
      <title>Shipping less JavaScript with Baseline</title>
      <link>https://javascriptweekly.com/issues/798</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;#​798 — August 11, 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/189117/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; padding: 0px 15px;"&gt;&lt;p&gt;🏖️ A brief scheduling note: &lt;strong&gt;We're taking a summer break next week, so we'll be back in your inbox on August 25.&lt;/strong&gt; Catch you then!&lt;br&gt;__&lt;br&gt;&lt;em&gt;Your editor, Peter Cooper&lt;/em&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/189062/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/hwbgtoneensejphb9l4r.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/189062/rss" title="engineeringblog.yelp.com" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Migrating a Large Flow Monorepo to TypeScript&lt;/a&gt;&lt;/span&gt; — Over several years, Yelp moved 1.4 million lines off &lt;a href="https://javascriptweekly.com/link/189063/rss" style=" color: #3366aa;   "&gt;Flow&lt;/a&gt;, and this writeup is more useful as a guide to running &lt;em&gt;any&lt;/em&gt; long migration than as a Flow story. It was a big win on its own terms, with type coverage up from 83% to 96%.&lt;/p&gt;
  &lt;p&gt;Shawn Walton (Yelp) &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 missed it, Yelp also wrote about &lt;a href="https://javascriptweekly.com/link/189119/rss" style=" color: #3366aa; font-weight: 500;"&gt;its webpack to Rspack migration&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;a href="https://javascriptweekly.com/link/189061/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/c2161169.jpg" width="160" 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/189061/rss" title="dashboard.render.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Render Runs JavaScript, Front to Back&lt;/a&gt;&lt;/span&gt; — Link your repo and Render takes it from there. Wire up your Vite site to your Hono API to your BullMQ job to your distributed agent workflow, all on one platform. Loop in your agent with official Render &lt;code&gt;/plugins&lt;/code&gt; for Codex and Claude Code. Start free and scale from there.&lt;/p&gt;
  &lt;p&gt;Render &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/189064/rss" title="blog.cloudflare.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Kitesurf: Cloudflare's Agent-First Browser in V8 Isolates&lt;/a&gt;&lt;/span&gt; — A browser engine that runs on &lt;em&gt;Workers&lt;/em&gt; with one isolate per page. Aimed at agents rather than humans, it uses 3-7x less CPU and memory than Chromium, at the cost of being slower. You can &lt;a href="https://javascriptweekly.com/link/189065/rss" style=" color: #3366aa;   "&gt;try it out now&lt;/a&gt; in beta, and it'll be open sourced in due course.&lt;/p&gt;
  &lt;p&gt;Martinho, Constant, Figueira, and Duarte (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;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189066/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pnpm 12, the Rust rewrite&lt;/a&gt;, is now a release candidate, and only three things differ from pnpm 11.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Bun 1.4 continues to be &lt;a href="https://javascriptweekly.com/link/189067/rss" style=" color: #3366aa; font-weight: 500;   "&gt;teased on 𝕏&lt;/a&gt; on an almost daily basis, and is expected any day now, though creator Jarred Sumner has been distracted by &lt;a href="https://javascriptweekly.com/link/189068/rss" style=" color: #3366aa; font-weight: 500;   "&gt;trying to solve the Riemann hypothesis&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 A &lt;a href="https://javascriptweekly.com/link/189069/rss" style=" color: #3366aa; font-weight: 500;   "&gt;12-year-old weak PRNG in &lt;code&gt;crypto-js&lt;/code&gt;&lt;/a&gt; was used to drain crypto wallets, though only if you generated secrets with it on a pre-4.0.0 (2020!) release.&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/189070/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Deno 2.9.5&lt;/a&gt; – Adds an &lt;a href="https://javascriptweekly.com/link/189071/rss" style=" color: #3366aa; font-weight: 500;   "&gt;experimental QuickJS backend&lt;/a&gt; for &lt;code&gt;deno compile&lt;/code&gt; and &lt;code&gt;deno desktop&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189072/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js 26.7.0 (Current)&lt;/a&gt; – Adds &lt;code&gt;--test-coverage-include-all&lt;/code&gt;, FFI and SQLite crash fixes, and initial support for Perfetto tracing.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189073/rss" style=" color: #3366aa; font-weight: 500;   "&gt;SolidStart v2&lt;/a&gt; – &lt;a href="https://javascriptweekly.com/link/189074/rss" style=" color: #3366aa; font-weight: 500;   "&gt;SolidJS&lt;/a&gt;'s equivalent of Next.js or SvelteKit.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189075/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Preact 11 Release Candidate&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189076/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Astro 7.2&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/189077/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Motion 13.1&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/189078/rss" title="www.smashingmagazine.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;How &lt;em&gt;Baseline&lt;/em&gt; Can Help You Ship Less JavaScript&lt;/a&gt;&lt;/span&gt; — A practical audit method for your dependencies. Groups them into clusters (&lt;code&gt;Intl&lt;/code&gt;, HTTP, UI primitives, &lt;code&gt;lodash&lt;/code&gt;), gives you questions to ask before deleting things, and works through a case where a swap can make your bundle &lt;em&gt;bigger&lt;/em&gt; (&lt;a href="https://javascriptweekly.com/link/189118/rss" style=" color: #3366aa;   "&gt;Day.js&lt;/a&gt; → Temporal). A familiar theme developed into a rigorous, reusable audit.&lt;/p&gt;
  &lt;p&gt;Jad Joubran &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/189080/rss" title="www.jsdelivr.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Making More npm Packages Work with jsDelivr ESM Mode&lt;/a&gt;&lt;/span&gt; — &lt;a href="https://javascriptweekly.com/link/189081/rss" style=" color: #3366aa;   "&gt;jsDelivr&lt;/a&gt; is a popular CDN used to load npm packages into pages without a build step. This is a thorough, technical tour of what happens when converting packages to browser ESM (via its &lt;code&gt;/+esm&lt;/code&gt; endpoint) and all the ways CommonJS finds to make that hard.&lt;/p&gt;
  &lt;p&gt;Martin Kolárik (jsDelivr) &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/189079/rss" title="sentry.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Join Sentry Live: How Etsy Stays Crash-Free&lt;/a&gt;&lt;/span&gt; — Sentry and Etsy break down how they prep for peak traffic and debug in real time.&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/189082/rss" title="remysharp.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Progressive Enhancement Inside of JavaScript&lt;/a&gt;&lt;/span&gt; — Working on a train, a patchy data connection got Remy to notice users can interact with a page before its JavaScript is ready, with a neat fix being to bind a handler early and replay the intent later.&lt;/p&gt;
  &lt;p&gt;Remy Sharp &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/189083/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How the Astro Team Built a 'Software Factory' to Slash Its Issue Count&lt;/a&gt; – Agent-driven triage took Astro from over 200 open issues to 30. &lt;cite&gt;Matthew Phillips&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/189084/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Debugging Stuck Node.js Processes&lt;/a&gt; – A trick for catching event loop blockers that never yield. &lt;cite&gt;Winona Schroeer-Smith&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📺 &lt;a href="https://javascriptweekly.com/link/189085/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Stop Reviewing Diffs. Start Reviewing Systems&lt;/a&gt;  &lt;cite&gt;Kent C. Dodds&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; 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/189086/rss" title="celld.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;celld: &lt;em&gt;Durable Objects&lt;/em&gt; on Your Own S3 Bucket&lt;/a&gt;&lt;/span&gt; — A self-hosted take on Cloudflare's Workers and Durable Objects from Deno. V8 plus SQLite and Litestream's LTX coordinate through an S3 bucket with no consensus layer. &lt;a href="https://javascriptweekly.com/link/189087/rss" style=" color: #3366aa;   "&gt;GitHub repo&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Ryan Dahl (Deno) &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;😅 On self-hosting Durable Objects with &lt;code&gt;workerd&lt;/code&gt;, &lt;em&gt;"You beat us to it!"&lt;/em&gt; said Durable Objects creator Kenton Varda &lt;a href="https://javascriptweekly.com/link/189088/rss" style=" color: #3366aa; font-weight: 500;"&gt;on Hacker News&lt;/a&gt;, later adding &lt;em&gt;"celld is definitely ahead of us here. No doubt about that."&lt;/em&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/189089/rss" title="www.tigerdata.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;That Slow Tab Isn't the UI. It's the Query&lt;/a&gt;&lt;/span&gt; — TimescaleDB extends Postgres so queries stay fast at scale, straight from live data. &lt;a href="https://javascriptweekly.com/link/189089/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/189090/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;&lt;em&gt;hucre&lt;/em&gt; 1.0: A Zero-Dependency Spreadsheet Engine&lt;/a&gt;&lt;/span&gt; — An MIT-licensed, tree-shakeable engine for reading and writing common spreadsheet formats, including support for things like embedded images, hyperlinks, password protection, and pivot tables.&lt;/p&gt;
  &lt;p&gt;Wind &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/189091/rss" title="www.vlt.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;vlt 1.0: An &lt;code&gt;npm&lt;/code&gt; Alternative With CSS-Like Selectors&lt;/a&gt;&lt;/span&gt; — A drop-in &lt;code&gt;npm&lt;/code&gt; alternative with a key draw being &lt;code&gt;vlt query&lt;/code&gt;, which lets you use 60+ CSS-like selectors over your dependency graph (of which half are security related). vlt also offers hosted private package registries.&lt;/p&gt;
  &lt;p&gt;Darcy Clarke &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/189092/rss" title="tanstack.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;TanStack Table v9: A Faster, More Modular Foundation&lt;/a&gt;&lt;/span&gt; — The headless table library gets a tree-shakeable architecture, state moves to &lt;a href="https://javascriptweekly.com/link/189093/rss" style=" color: #3366aa;   "&gt;TanStack Store&lt;/a&gt; for &lt;a href="https://javascriptweekly.com/link/189094/rss" style=" color: #3366aa;   "&gt;fine-grained reactivity&lt;/a&gt;, and there are &lt;a href="https://javascriptweekly.com/link/189095/rss" style=" color: #3366aa;   "&gt;big memory wins&lt;/a&gt; for large datasets.&lt;/p&gt;
  &lt;p&gt;Kevin Van Cott &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/189096/rss" style=" color: #3366aa; font-weight: 500;   "&gt;devalue 5.9&lt;/a&gt; – The Svelte project's more powerful &lt;code&gt;JSON.stringify&lt;/code&gt; supporting more JS language features.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189097/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Svelte Select 6.0&lt;/a&gt; – A select/autocomplete/typeahead Svelte component. Now requires Svelte 5.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189098/rss" style=" color: #3366aa; font-weight: 500;   "&gt;fuzzysort 4.0&lt;/a&gt; – Fast, small fuzzy search library with ranking and custom scoring.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189099/rss" style=" color: #3366aa; font-weight: 500;   "&gt;GTKX 1.0&lt;/a&gt; – Build native GTK4 desktop apps with React and TypeScript.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189100/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Belgie 0.40&lt;/a&gt; – Embeds a permissioned &lt;a href="https://javascriptweekly.com/link/189101/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Deno&lt;/a&gt; runtime in Python.&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;Which screen is slow, and on which devices? &lt;a href="https://javascriptweekly.com/link/189102/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Expo Observe&lt;/a&gt; is production performance monitoring for your mobile app.&lt;/p&gt;
 
&lt;p&gt;🤖 Block bots at login without slowing down real users. No CAPTCHAs, zero friction. &lt;a href="https://javascriptweekly.com/link/189103/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Try Fingerprint for free&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;⚡ &lt;a href="https://javascriptweekly.com/link/189104/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Merget&lt;/a&gt; is Git for AI-written code. It reviews every coding session and catches what your agent missed. Free for teams now: &lt;a href="https://javascriptweekly.com/link/189104/rss" style=" color: #3366aa; font-weight: 500;   "&gt;merget.ai&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;/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/189105/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/kkcqg7kjmncbzeusexlr.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;The &lt;a href="https://javascriptweekly.com/link/189106/rss" style=" color: #3366aa; font-weight: 500;   "&gt;js1024&lt;/a&gt; code golfing contest is over and we have &lt;a href="https://javascriptweekly.com/link/189107/rss" style=" color: #3366aa; font-weight: 500;   "&gt;three winners&lt;/a&gt;! &lt;a href="https://javascriptweekly.com/link/189105/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Skydreams&lt;/a&gt;, a &lt;em&gt;Super Monkey Ball&lt;/em&gt;-like experience, came in first place. You can read the &lt;a href="https://javascriptweekly.com/link/189108/rss" style=" color: #3366aa; font-weight: 500;   "&gt;readable&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/189109/rss" style=" color: #3366aa; font-weight: 500;   "&gt;minified&lt;/a&gt; source if you want to see the techniques used.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Docker has entered the agent sandbox game with &lt;a href="https://javascriptweekly.com/link/189110/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Docker Sandboxes&lt;/a&gt;, a free way to run coding agents in their own microVMs with a Docker daemon inside.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;MCP goes &lt;em&gt;stateless&lt;/em&gt; with &lt;a href="https://javascriptweekly.com/link/189111/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the 2026-07-28 spec&lt;/a&gt;, so no more sticky sessions or open streams. &lt;a href="https://javascriptweekly.com/link/189112/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Cloudflare covers what changed&lt;/a&gt; and what it takes to migrate.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/189113/rss" style=" color: #3366aa; font-weight: 500;   "&gt;scriptc&lt;/a&gt; is a new, experimental TypeScript-to-native compiler from Vercel Labs. With &lt;code&gt;--dynamic&lt;/code&gt;, unsupported or dynamic portions are run in a bundled QuickJS engine.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 The &lt;a href="https://javascriptweekly.com/link/189115/rss" style=" color: #3366aa; font-weight: 500;   "&gt;results of the &lt;em&gt;State of CSS 2026&lt;/em&gt; survey&lt;/a&gt; have been released.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;div style="   margin-top: 14px; margin-bottom: 8px;  "&gt;&lt;/div&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;I'm off on vacation at the end of this week, so see you again on August 25! Or in &lt;a href="https://javascriptweekly.com/link/189120/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node Weekly&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/189121/rss" style=" color: #3366aa; font-weight: 500;   "&gt;React Status&lt;/a&gt; if you subscribe to those… ;-)&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;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




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