<?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>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>
    <item>
      <title>Reimplementing htmx from scratch</title>
      <link>https://javascriptweekly.com/issues/797</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;#​797 — August 4, 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/188817/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/188754/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/sk9fe6nujcbnpxh2pkor.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/188754/rss" title="nextjs.org" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Next.js 16.3 Released&lt;/a&gt;&lt;/span&gt; — The newly expanded Next.js team (now including &lt;a href="https://javascriptweekly.com/link/188755/rss" style=" color: #3366aa;   "&gt;Dan Abramov&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188756/rss" style=" color: #3366aa;   "&gt;𝕏 Pete Hunt&lt;/a&gt;!) has dropped the latest version of the popular React framework, complete with faster builds, optional TypeScript 7 type checking, faster SSR, &lt;a href="https://javascriptweekly.com/link/188757/rss" style=" color: #3366aa;   "&gt;Instant Navigations&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188758/rss" style=" color: #3366aa;   "&gt;AI improvements&lt;/a&gt;, and more.&lt;/p&gt;
  &lt;p&gt;The Next.js 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;a href="https://javascriptweekly.com/link/188753/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/0f9a422d.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/188753/rss" title="master.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Frontend Architecture: Monoliths to Microfrontends&lt;/a&gt;&lt;/span&gt; — Maxi Ferreira walks through modular monoliths, monorepos, and microfrontends so you can pick the right structure for your codebase and know the real cost before you commit.&lt;/p&gt;
  &lt;p&gt;Master.dev &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188759/rss" title="zserge.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Let's Make the Worst &lt;code&gt;htmx&lt;/code&gt; Ever&lt;/a&gt;&lt;/span&gt; — After making &lt;a href="https://javascriptweekly.com/link/188760/rss" style=" color: #3366aa;   "&gt;the 'worst' React&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188761/rss" style=" color: #3366aa;   "&gt;Vue.js&lt;/a&gt; implementations, Serge tackles rebuilding the essence of &lt;a href="https://javascriptweekly.com/link/188762/rss" style=" color: #3366aa;   "&gt;htmx&lt;/a&gt; from scratch. A fun way to understand what htmx actually does under the hood.&lt;/p&gt;
  &lt;p&gt;Serge Zaitsev &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/188763/rss" title="evilmartians.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Secure Way to Release an &lt;code&gt;npm&lt;/code&gt; Package in 2026&lt;/a&gt;&lt;/span&gt; — A practical guide to publishing &lt;code&gt;npm&lt;/code&gt; packages more safely, written by the author of numerous popular packages (e.g. &lt;a href="https://javascriptweekly.com/link/188764/rss" style=" color: #3366aa;   "&gt;postcss&lt;/a&gt;). As well as showing &lt;em&gt;how&lt;/em&gt; to use staged publishing and trusted publishing, he explains &lt;em&gt;why&lt;/em&gt; they help.&lt;/p&gt;
  &lt;p&gt;Andrey Sitnik &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 GitHub is continuing to &lt;a href="https://javascriptweekly.com/link/188766/rss" style=" color: #3366aa; font-weight: 500;"&gt;focus on npm security&lt;/a&gt;, and is starting to &lt;a href="https://javascriptweekly.com/link/188767/rss" style=" color: #3366aa; font-weight: 500;"&gt;scan every npm package for malware&lt;/a&gt; at publish time. This will have some implications, including a delay between publishing and availability for installation.&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;strong&gt;Developing incident:&lt;/strong&gt; The popular &lt;code&gt;keyv&lt;/code&gt; and &lt;code&gt;cacheable&lt;/code&gt; packages were &lt;a href="https://javascriptweekly.com/link/188768/rss" style=" color: #3366aa; font-weight: 500;   "&gt;compromised today with a credential-stealing worm&lt;/a&gt;. The repercussions are ongoing with &lt;a href="https://javascriptweekly.com/link/188822/rss" style=" color: #3366aa; font-weight: 500;   "&gt;hundreds more packages&lt;/a&gt; compromised so far.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Monthly updates from &lt;a href="https://javascriptweekly.com/link/188769/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the Astro team&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188770/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the Svelte team&lt;/a&gt;. The first preview releases of SvelteKit 3 are now available.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;⚖️ The &lt;em&gt;Deno vs Oracle&lt;/em&gt; JavaScript™ trademark case rattles on with &lt;a href="https://javascriptweekly.com/link/188771/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Deno consenting to a &lt;em&gt;fifth&lt;/em&gt; extension request&lt;/a&gt; as discovery continues.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Popular JS library factory &lt;a href="https://javascriptweekly.com/link/188772/rss" style=" color: #3366aa; font-weight: 500;   "&gt;&lt;em&gt;TanStack&lt;/em&gt; has rebranded&lt;/a&gt; and introduced &lt;a href="https://javascriptweekly.com/link/188773/rss" style=" color: #3366aa; font-weight: 500;   "&gt;new 'Markdown' and 'Highlight' libraries&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/188774/rss" style=" color: #3366aa; font-weight: 500;   "&gt;MobX 7.0&lt;/a&gt; – The popular state manager slims down, removes deprecations, &lt;a href="https://javascriptweekly.com/link/188775/rss" style=" color: #3366aa; font-weight: 500;   "&gt;updates its React bindings&lt;/a&gt;, and now always uses Proxy-backed observable objects and arrays.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188776/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Javy 9.1&lt;/a&gt; – Toolchain for compiling JavaScript to WebAssembly for WASM runtimes.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188777/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js v26.6.0 (Current)&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188778/rss" style=" color: #3366aa; font-weight: 500;   "&gt;v24.19.0 (LTS)&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188779/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vite 8.2&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188780/rss" style=" color: #3366aa; font-weight: 500;   "&gt;React Three Fiber 9.7&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188818/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Lerna 10.0&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188782/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Hono 4.13.0&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📖  Articles and Videos&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188783/rss" title="denodell.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Your SPA is Leaking Memory: 'Soak Test' It&lt;/a&gt;&lt;/span&gt; — How to run a Playwright 'soak test' that loops a user flow within the same browser context, watches DOM node and listener counts, and fails CI when a memory leak creeps in.&lt;/p&gt;
  &lt;p&gt;Den Odell &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/188784/rss" title="blog.gaborkoos.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Your JSON is Lying to You&lt;/a&gt;&lt;/span&gt; — A reminder that a &lt;code&gt;JSON.parse&lt;/code&gt;/&lt;code&gt;JSON.stringify&lt;/code&gt; round-trip is far from lossless, with big integers, &lt;code&gt;undefined&lt;/code&gt;, &lt;code&gt;Date&lt;/code&gt;, and more, altered or lost along the way. Gabor covers the nastier gotchas and practical ways to make the conversion boundaries explicit.&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/188785/rss" title="jobs.fidelity.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Don’t Just Code—Grow as a Technologist&lt;/a&gt;&lt;/span&gt; — Explore new technology, sharpen your existing skills and build new ones when you work in tech at Fidelity.&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/188786/rss" title="blog.cloudflare.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;cdnjs at 9 Billion Requests a Day: A Migration Story&lt;/a&gt;&lt;/span&gt; — &lt;a href="https://javascriptweekly.com/link/188787/rss" style=" color: #3366aa;   "&gt;cdnjs&lt;/a&gt; is a popular, free CDN for loading JavaScript libraries without bundling or self-hosting (which LLMs &lt;em&gt;really&lt;/em&gt; seem to like). Cloudflare explains how it now runs entirely on Workers and R2.&lt;/p&gt;
  &lt;p&gt;Simona Badoiu (Cloudflare) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188788/rss" title="healeycodes.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Adding Go's &lt;code&gt;defer&lt;/code&gt; to the TypeScript Compiler&lt;/a&gt;&lt;/span&gt; — In Go, &lt;code&gt;defer&lt;/code&gt; delays the execution of a function call until the surrounding function finishes. Can you just fork TypeScript and add language features? Yes! Should you? Probably not, as &lt;a href="https://javascriptweekly.com/link/188789/rss" style=" color: #3366aa;   "&gt;&lt;code&gt;using&lt;/code&gt;&lt;/a&gt; is already a good fit for the use case.&lt;/p&gt;
  &lt;p&gt;Andrew Healey &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/188792/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Learning Remix 3&lt;/a&gt; – By porting a Solid 2.0 demo to Remix 3's server-first model. &lt;cite&gt;Mark Malstrom&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/188793/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Why npm Dependency Trees Are So Big&lt;/a&gt;  &lt;cite&gt;Andrew Nesbitt&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/188794/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zzctbd5nks5jg4ur4cir.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/188794/rss" title="tanstack.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;TanStack Charts: A New Chart Grammar Option&lt;/a&gt;&lt;/span&gt; — In the past few weeks, TanStack has been rapidly iterating on a new, framework-neutral way to declaratively specify a large number of chart-related visualizations in JavaScript. Output renders to SVG or canvas and can be styled as you wish. &lt;a href="https://javascriptweekly.com/link/188795/rss" style=" color: #3366aa;   "&gt;Here's a comparison&lt;/a&gt; against other established options.&lt;/p&gt;
  &lt;p&gt;TanStack &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/188796/rss" title="agentfield.ai" style=" color: #3366aa;    font-size: 1.05em;"&gt;An Open Source PR Reviewer Just Ranked #2 of 42 on Code-Review-Bench&lt;/a&gt;&lt;/span&gt; — PR-AF outranks the commercial tools. Verified findings only, ~10x cheaper, self-hosted. Drops into GitHub Actions.&lt;/p&gt;
  &lt;p&gt;Agentfield.ai &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188797/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;MicroDiff 1.6: Fast Object and Array Comparison Library&lt;/a&gt;&lt;/span&gt; — Given two objects or arrays, it returns the differences (think &lt;code&gt;diff&lt;/code&gt; but for JS objects). This week's release adds support for Temporal types.&lt;/p&gt;
  &lt;p&gt;Jacob Jackson &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;💡 Jacob has a post from 2022 covering &lt;a href="https://javascriptweekly.com/link/188819/rss" style=" color: #3366aa; font-weight: 500;"&gt;how microdiff is so fast&lt;/a&gt;.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188798/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Virtua: Virtual List and Grid Component for Multiple Frameworks&lt;/a&gt;&lt;/span&gt; — A fast and small virtual list/grid component for React, Vue, Solid, Svelte, and Angular. &lt;a href="https://javascriptweekly.com/link/188799/rss" style=" color: #3366aa;   "&gt;Here's a demo&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188800/rss" style=" color: #3366aa;   "&gt;a comparison table&lt;/a&gt; against other solutions.&lt;/p&gt;
  &lt;p&gt;inokawa &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/188801/rss" title="perspective-dev.github.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Perspective 5: Interactive Analytics and Data Vis Component&lt;/a&gt;&lt;/span&gt; — Originally built by JP Morgan, a WASM-powered data visualization component suited to large and/or real-time streaming datasets. 5.0/5.1 just dropped with numerous fixes, &lt;code&gt;wasm64&lt;/code&gt; builds, and &lt;a href="https://javascriptweekly.com/link/188802/rss" style=" color: #3366aa;   "&gt;window columns&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;OpenJS Foundation &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/188803/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Neutralinojs 6.9&lt;/a&gt; – The lightweight Electron alternative has a new C++ network API for making HTTP requests free of the webview's CORS restrictions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188804/rss" style=" color: #3366aa; font-weight: 500;   "&gt;DukPy 0.6&lt;/a&gt; – Simple JavaScript interpreter for Python. Now uses the QuickJS-NG engine to support more modern JavaScript and Promises.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188805/rss" style=" color: #3366aa; font-weight: 500;   "&gt;isomorphic-git 1.40.0&lt;/a&gt; – A pure JS implementation of Git for Node &amp;amp; browsers.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188806/rss" style=" color: #3366aa; font-weight: 500;   "&gt;better-result 3.0&lt;/a&gt; – Lightweight &lt;code&gt;Result&lt;/code&gt; type for TypeScript with generator-based composition.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188807/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ip-address 10.4&lt;/a&gt; – Parse, validate and manipulate IP (v4 and v6) addresses.&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;⚡ Stop being the integration layer. &lt;a href="https://javascriptweekly.com/link/188820/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Build a CRM-to-signed-PDF pipeline in n8n&lt;/a&gt; with plain HTTP calls. No SDK, no manual file handling.&lt;/p&gt;
 
&lt;p&gt;Flaky tests slowing down dev? &lt;a href="https://javascriptweekly.com/link/188809/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;⚡ &lt;a href="https://javascriptweekly.com/link/188810/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/188810/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Try it free&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; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Did you know JavaScript supports a third type of comment (beyond &lt;code&gt;//&lt;/code&gt; and &lt;code&gt;/* */&lt;/code&gt;)? &lt;a href="https://javascriptweekly.com/link/188811/rss" style=" color: #3366aa; font-weight: 500;   "&gt;▶️ Mat Marquis shows off hashbang comments&lt;/a&gt; in a short YouTube video. And yes, &lt;a href="https://javascriptweekly.com/link/188821/rss" style=" color: #3366aa; font-weight: 500;   "&gt;they're in the language spec!&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 GitHub's Sean Goedecke says &lt;a href="https://javascriptweekly.com/link/188812/rss" style=" color: #3366aa; font-weight: 500;   "&gt;LLMs reward expertise&lt;/a&gt;, with the most important prompting skill being expertise in the domain you're prompting for.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Microsoft is previewing &lt;a href="https://javascriptweekly.com/link/188813/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a way to call native Windows APIs from Node&lt;/a&gt; (and therefore Electron) &lt;em&gt;without&lt;/em&gt; native addons, via a new dynamic Windows Runtime API (WinRT) projection.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cloudflare &lt;em&gt;Workers&lt;/em&gt; has added &lt;a href="https://javascriptweekly.com/link/188814/rss" style=" color: #3366aa; font-weight: 500;   "&gt;support for inbound TCP connections and gRPC&lt;/a&gt; &lt;em&gt;(in private beta)&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188815/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Stacked pull requests are now in public preview&lt;/a&gt; on GitHub.&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/797/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 4 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/797</guid>
    </item>
    <item>
      <title>Anders Hejlsberg demos TypeScript 7's 10x speedup</title>
      <link>https://javascriptweekly.com/issues/796</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;#​796 — July 28, 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/188526/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/188465/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/upfoks2bijkfgfdyf7i3.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/188465/rss" title="leerob.com" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Rust Is Eating JavaScript (Still, in 2026)&lt;/a&gt;&lt;/span&gt; — Our most-read link of 2021 gets an update for 2026. Lee Robinson (then Vercel, now Cursor) predicted Rust would be used to reimplement more and more JavaScript ecosystem tooling, and Rspack, Biome, Turbopack, and &lt;a href="https://javascriptweekly.com/link/188466/rss" style=" color: #3366aa;   "&gt;Bun's recent rewrite&lt;/a&gt; keep proving him right.&lt;/p&gt;
  &lt;p&gt;Lee Robinson &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/188464/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/0f9a422d.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/188464/rss" title="master.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Frontend Architecture: Monoliths to Microfrontends&lt;/a&gt;&lt;/span&gt; — Maxi Ferreira walks through modular monoliths, monorepos, and microfrontends so you can pick the right structure for your codebase and know the real cost before you commit.&lt;/p&gt;
  &lt;p&gt;Master.dev &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188467/rss" title="octanejs.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;Octane: React's Programming Model, But &lt;em&gt;Compiled&lt;/em&gt;&lt;/a&gt;&lt;/span&gt; — From the creator of &lt;a href="https://javascriptweekly.com/link/188468/rss" style=" color: #3366aa;   "&gt;Inferno&lt;/a&gt; comes a successor: a compiled React-like framework (&lt;a href="https://javascriptweekly.com/link/188469/rss" style=" color: #3366aa;   "&gt;differences explained here&lt;/a&gt;) that generates reactivity ahead of time with no VDOM. Supports TSX/JSX and TSRX, with integrations for TanStack Query and Router, plus other common React libraries.&lt;/p&gt;
  &lt;p&gt;Dominic Gannaway &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/188470/rss" style=" color: #3366aa; font-weight: 500;   "&gt;htmx 4.0&lt;/a&gt; is, curiously, pitching itself as &lt;em&gt;"the first JavaScript library to &lt;a href="https://javascriptweekly.com/link/188527/rss" style=" color: #3366aa; font-weight: 500;   "&gt;release exclusively on the Game Boy&lt;/a&gt;"&lt;/em&gt; with a commemorative cartridge.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;At last week's TC39 meeting, &lt;a href="https://javascriptweekly.com/link/188472/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Await Dictionary&lt;/a&gt; (&lt;code&gt;Promise.allKeyed&lt;/code&gt;) progressed to Stage 3.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ryan Dahl &lt;a href="https://javascriptweekly.com/link/188529/rss" style=" color: #3366aa; font-weight: 500;   "&gt;says&lt;/a&gt; that &lt;code&gt;deno compile&lt;/code&gt; will soon &lt;a href="https://javascriptweekly.com/link/188473/rss" style=" color: #3366aa; font-weight: 500;   "&gt;support using QuickJS instead of V8&lt;/a&gt; for making radically smaller binaries from JS/TS projects.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Node.js has &lt;a href="https://javascriptweekly.com/link/188474/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a new API docs site in preview&lt;/a&gt; (now includes search!)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188475/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Oxlint's type-aware linting is now stable&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/188476/rss" style=" color: #3366aa; font-weight: 500;   "&gt;pnpm has had a flurry of releases&lt;/a&gt; introducing native workspace release management, a &lt;code&gt;doctor&lt;/code&gt; command to diagnose installation issues, and more.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188477/rss" style=" color: #3366aa; font-weight: 500;   "&gt;React 19.2.8&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188478/rss" style=" color: #3366aa; font-weight: 500;   "&gt;19.1.9&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188479/rss" style=" color: #3366aa; font-weight: 500;   "&gt;19.0.8&lt;/a&gt; to fix a potential &lt;a href="https://javascriptweekly.com/link/188530/rss" style=" color: #3366aa; font-weight: 500;   "&gt;DoS vulnerability&lt;/a&gt; in server function endpoints.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188480/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Ember 7.1&lt;/a&gt; – Adds a wide variety of new helpers and operators, and docs modernization.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188481/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Nuxt 4.5.1 and 3.21.10&lt;/a&gt; – Security patch releases after last week's &lt;a href="https://javascriptweekly.com/link/188482/rss" style=" color: #3366aa; font-weight: 500;   "&gt;big Nuxt 4.5 release&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188483/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ESLint 10.8&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188484/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Deno 2.9.4&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188485/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Prisma 7.9&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188486/rss" style=" color: #3366aa; font-weight: 500;   "&gt;React Router 8.3&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188487/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vue 3.6 RC2&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/188488/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/c_crop,g_south,w_w,h_h_sub_50/bjd0nutn9yncyimrgifx.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/188488/rss" title="www.youtube.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;The Creator of TypeScript Shows Off TypeScript 7&lt;/a&gt;&lt;/span&gt; — Anders Hejlsberg demos the 10x speedup gained by the new Go-based TypeScript compiler on VS Code's 1.3M line codebase. He also covers the new LSP language server and why compiler API users (Vue, Astro, Svelte) must stay on TypeScript 6.&lt;/p&gt;
  &lt;p&gt;Anders Hejlsberg (Microsoft) &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/188489/rss" title="domenic.me" style=" color: #3366aa;    font-size: 1.05em;"&gt;Domenic Denicola's Agentic Coding Setup&lt;/a&gt;&lt;/span&gt; — It's fascinating when a prolific developer (Domenic was a key figure in &lt;a href="https://javascriptweekly.com/link/188490/rss" style=" color: #3366aa;   "&gt;the adoption of promises in JavaScript&lt;/a&gt;, creating &lt;a href="https://javascriptweekly.com/link/188491/rss" style=" color: #3366aa;   "&gt;jsdom&lt;/a&gt;, and &lt;a href="https://javascriptweekly.com/link/188492/rss" style=" color: #3366aa;   "&gt;much more&lt;/a&gt;) shares their workflow. This is no exception, covering areas like disposable VMs, Tailscale, and worktrees.&lt;/p&gt;
  &lt;p&gt;Domenic Denicola &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/188493/rss" title="www.meticulous.ai" style=" color: #3366aa;    font-size: 1.05em;"&gt;Still Writing Tests Manually? Meticulous AI Is Here&lt;/a&gt;&lt;/span&gt; — Flaky tests slowing down dev? &lt;a href="https://javascriptweekly.com/link/188493/rss" style=" color: #3366aa;   "&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;Meticulous &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188494/rss" title="medium.engineering" style=" color: #3366aa;    font-size: 1.05em;"&gt;How Medium Built Its New 'Table of Contents' Feature&lt;/a&gt;&lt;/span&gt; — How the content site built a dynamic table of contents widget for all its articles, inspired by a third-party Chrome extension that did the same thing.&lt;/p&gt;
  &lt;p&gt;Scott Batson (Medium) &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/188495/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Introducing Deferred Module Evaluation with &lt;code&gt;import defer&lt;/code&gt;&lt;/a&gt; – Currently at stage 3 in the TC39 process. &lt;cite&gt;Nitay Neeman&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/188496/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Measuring Component Performance with the Container Timing API&lt;/a&gt; – Now in a Chrome &lt;a href="https://javascriptweekly.com/link/188497/rss" style=" color: #3366aa; font-weight: 500;   "&gt;origin trial&lt;/a&gt;. &lt;cite&gt;Harry Roberts&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/188498/rss" style=" color: #3366aa; font-weight: 500;   "&gt;No, We Can't Harden Node.js Against Prototype Pollution&lt;/a&gt;  &lt;cite&gt;Matteo Collina&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://javascriptweekly.com/link/188499/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Cloudflare Workers and Hyperdrive with SvelteKit&lt;/a&gt;  &lt;cite&gt;Adam Rackis&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/188500/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/sky6dwpemejqzgjdwgjt.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;🌐&lt;/span&gt; &lt;a href="https://javascriptweekly.com/link/188500/rss" title="maplibre.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;MapLibre GL JS 6.0: Interactive Vector Maps for the Web&lt;/a&gt;&lt;/span&gt; — A WebGL-powered library for rendering interactive vector tile maps, forked from Mapbox GL JS after its 2020 relicensing. Version 6 goes ESM-only, requires WebGL 2, and lands broad performance gains. &lt;a href="https://javascriptweekly.com/link/188501/rss" style=" color: #3366aa;   "&gt;Release notes&lt;/a&gt; and a &lt;a href="https://javascriptweekly.com/link/188502/rss" style=" color: #3366aa;   "&gt;v5 to v6 migration guide&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;MapLibre &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/188503/rss" title="www.locize.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Ship Translations Without Redeploying. Made by the i18next Team&lt;/a&gt;&lt;/span&gt; — The cloud TMS from the i18next team. saveMissing, in-context editor, AI translation, CDN. Free tier, Swiss-made.&lt;/p&gt;
  &lt;p&gt;Locize &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/188504/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Bruno 4.0: An Open-Source HTTP API Client App&lt;/a&gt;&lt;/span&gt; — An open source, JavaScript-powered lightweight alternative to something like Postman for testing and making requests against HTTP APIs.&lt;/p&gt;
  &lt;p&gt;Anoop M D, Anusree P S and Contributors &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/188505/rss" title="tslog.js.org" style=" color: #3366aa;    font-size: 1.05em;"&gt;tslog 5: Zero-Dependency Logger for Node, Deno, Bun and Browsers&lt;/a&gt;&lt;/span&gt; — A ground-up rewrite, now ESM-only, and also covers workers and React Native. Pretty output by default, JSON optionally, plus middleware, file/HTTP/worker transports, secret masking, and error stacks that resolve through source maps to your original &lt;code&gt;.ts&lt;/code&gt; lines. &lt;a href="https://javascriptweekly.com/link/188506/rss" style=" color: #3366aa;   "&gt;GitHub repo.&lt;/a&gt;&lt;/p&gt;
  &lt;p&gt;Eugene Terehov &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/188507/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;eslint-package-json: Powerful ESLint Rules for &lt;code&gt;package.json&lt;/code&gt;&lt;/a&gt;&lt;/span&gt; — An ESLint plugin that catches &lt;code&gt;package.json&lt;/code&gt; mistakes like invalid names, bad version ranges, broken &lt;code&gt;exports&lt;/code&gt;, redundant &lt;code&gt;files&lt;/code&gt; entries, and more, and fixes many of them automatically.&lt;/p&gt;
  &lt;p&gt;Sindre Sorhus &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188508/rss" title="www.shadscan.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Shadscan: Deterministic UI Audits for &lt;code&gt;shadcn&lt;/code&gt; Apps&lt;/a&gt;&lt;/span&gt; — A tool that statically analyzes your shadcn components using almost 60 deterministic checks (no AI or API keys needed) around fundamental accessibility, state, and composition best practices.&lt;/p&gt;
  &lt;p&gt;OrcDev &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/188509/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Slick 2.0&lt;/a&gt; – Ken Wheeler's classic jQuery carousel control (&lt;a href="https://javascriptweekly.com/link/188510/rss" style=" color: #3366aa; font-weight: 500;   "&gt;demos&lt;/a&gt;). Now compatible with &lt;a href="https://javascriptweekly.com/link/188511/rss" style=" color: #3366aa; font-weight: 500;   "&gt;jQuery 4.0&lt;/a&gt;!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188512/rss" style=" color: #3366aa; font-weight: 500;   "&gt;isomorphic-git 1.40&lt;/a&gt; – Pure JS implementation of Git for Node and browsers.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188513/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Satori 0.29&lt;/a&gt; – Library to convert HTML and CSS with JSX syntax into SVG.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188514/rss" style=" color: #3366aa; font-weight: 500;   "&gt;dompdf.js 2.0&lt;/a&gt; – Converts HTML to multi-page PDFs in the browser.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188528/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Verdaccio 6.9&lt;/a&gt; – Self-hostable Node.js private proxy registry.&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;From $500 a month to hundreds of thousands of downloads in six months. &lt;a href="https://javascriptweekly.com/link/188516/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How one solo Expo app actually grew usage and revenue&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;You shipped the feature. The data grew. The query got slow. &lt;a href="https://javascriptweekly.com/link/188517/rss" style=" color: #3366aa; font-weight: 500;   "&gt;TimescaleDB&lt;/a&gt; extends Postgres for analytics at scale, no second database.&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/188518/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ricngwidlwclsggxe3dh.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188519/rss" style=" color: #3366aa; font-weight: 500;   "&gt;js1024&lt;/a&gt; is an annual JavaScript &lt;em&gt;code-golfing&lt;/em&gt; competition where people try to squeeze as much out of 1024 bytes as possible. This year's run just closed &lt;a href="https://javascriptweekly.com/link/188518/rss" style=" color: #3366aa; font-weight: 500;   "&gt;and you can try all the entries (and see their code) here&lt;/a&gt; – the winners will be announced next week.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🏆 The &lt;em&gt;OpenJS Foundation&lt;/em&gt; has &lt;a href="https://javascriptweekly.com/link/188520/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a ranking of the top contributors to its projects&lt;/a&gt; (which &lt;a href="https://javascriptweekly.com/link/188521/rss" style=" color: #3366aa; font-weight: 500;   "&gt;include&lt;/a&gt; Node, Express, and Electron) in the past year.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 In &lt;a href="https://javascriptweekly.com/link/188522/rss" style=" color: #3366aa; font-weight: 500;   "&gt;How I Stopped Running Out of Tokens&lt;/a&gt;, a dev whose company uses Claude Enterprise shares tools you can use (e.g. &lt;a href="https://javascriptweekly.com/link/188523/rss" style=" color: #3366aa; font-weight: 500;   "&gt;rtk&lt;/a&gt;) to get more out of your limits.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188524/rss" style=" color: #3366aa; font-weight: 500;   "&gt;LLMs are continuing to hallucinate package names&lt;/a&gt;, giving potential 'slopsquatters' opportunities for malicious deeds.&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/796/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 28 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/796</guid>
    </item>
    <item>
      <title>The coding challenge you don't want to pass</title>
      <link>https://javascriptweekly.com/issues/795</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;#​795 — July 21, 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/188234/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/188177/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/xqczohnqoev2kuyybhmk.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/188177/rss" title="framework-benchmarks.as93.net" style=" color: #3366aa;    font-size: 1.1em; line-height: 1.4em;"&gt;Framework Benchmarks: Compare Frontend Frameworks&lt;/a&gt;&lt;/span&gt; — An experienced developer built and benchmarked the same app across numerous frameworks (e.g. Angular, Solid, React, Alpine.js…). Here are the results, covering bundle size, build time, UX metrics, and more.&lt;/p&gt;
  &lt;p&gt;Alicia Sykes &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;💡 Alicia also created &lt;a href="https://javascriptweekly.com/link/188178/rss" style=" color: #3366aa; font-weight: 500;"&gt;Stack Match&lt;/a&gt;, a page that lets you specify your criteria for a framework and shows the best matches. Vue usually wins though!&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/188176/rss" style=" color: #3366aa;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/5f351a17.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/188176/rss" title="xyops.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;xyOps: Open Source Ops Automation, from the Cronicle Team&lt;/a&gt;&lt;/span&gt; — Run jobs across your fleet, build visual runbooks, monitor live metrics, and trigger alerts, tickets, snapshots, or follow-up actions. Self-hosted, BSD licensed, and all app features are included. Auto-import from Cronicle.&lt;/p&gt;
  &lt;p&gt;xyOps &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/188179/rss" title="nuxt.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Nuxt 4.5 Released: The Full-Stack Vue Framework&lt;/a&gt;&lt;/span&gt; — Daniel Roe calls it the biggest release in a while: Vite 8, Rspack 2, experimental SSR streaming, a new &lt;code&gt;useLayout&lt;/code&gt; composable, and a lot of preparation for Nuxt 5. Nuxt 3 users take note: it goes end of life July 31.&lt;/p&gt;
  &lt;p&gt;Nuxt 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;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/188180/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vue 3.6 is now in Release Candidate stage&lt;/a&gt; – Vapor Mode, first teased over two years ago, is now feature complete and ready to go.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188181/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Angular is switching to a yearly release cadence&lt;/a&gt;, with v23 scheduled for June 2027, a year after &lt;a href="https://javascriptweekly.com/link/188182/rss" style=" color: #3366aa; font-weight: 500;   "&gt;v22 dropped&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ESLint now offers &lt;a href="https://javascriptweekly.com/link/188183/rss" style=" color: #3366aa; font-weight: 500;   "&gt;official 'codemods' for automating ESLint version migrations&lt;/a&gt;, with v8→v9 and v9→v10 available.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇫🇷 &lt;a href="https://javascriptweekly.com/link/188184/rss" style=" color: #3366aa; font-weight: 500;   "&gt;An official Three.js conference&lt;/a&gt; is coming to Paris, France, this September 10-11. &lt;a href="https://javascriptweekly.com/link/188185/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Three.js&lt;/a&gt; developer &lt;a href="https://javascriptweekly.com/link/188186/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Mr.doob&lt;/a&gt; will, of course, be there.&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/188187/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Preact 11.0 Beta 2&lt;/a&gt; – &lt;em&gt;"One of the last betas for Preact 11,"&lt;/em&gt; says maintainer Jovi De Croock. There's already &lt;a href="https://javascriptweekly.com/link/188188/rss" style=" color: #3366aa; font-weight: 500;   "&gt;a migration guide&lt;/a&gt; ready to use.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188189/rss" style=" color: #3366aa; font-weight: 500;   "&gt;WebStorm 2026.2&lt;/a&gt; – JetBrains' JavaScript IDE adds TypeScript 7 support, and enhances support for Svelte and Vue.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188190/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Astro 7.1&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188191/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Rslint 0.7&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188192/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Rolldown 1.2&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188193/rss" style=" color: #3366aa; font-weight: 500;   "&gt;&lt;code&gt;actions/setup-node@v7&lt;/code&gt;&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/188194/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/y1sie2zdhnhjtqtnvwcy.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/188194/rss" title="www.elastic.co" style=" color: #3366aa;    font-size: 1.05em;"&gt;How a Fake Interview's Coding Challenge Steals Credentials&lt;/a&gt;&lt;/span&gt; — A dissection of a North Korean campaign that hides malware inside SVG images in a fake job interview's JavaScript 'coding challenge'. The targeting of job-seeking devs is on the increase, as Roman Imankulov &lt;a href="https://javascriptweekly.com/link/188195/rss" style=" color: #3366aa;   "&gt;recently discovered first-hand&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Daniel Stepanic (Elastic) &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/188196/rss" title="www.miris.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Creating Your First Streamed 3D Asset in Under 10 Minutes&lt;/a&gt;&lt;/span&gt; — Generate a streamable 3D asset, preview it in-browser, and share it. No code, no viewer downloads.&lt;/p&gt;
  &lt;p&gt;Miris &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #993 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://javascriptweekly.com/link/188197/rss" title="tech.olx.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Handling Concurrency on the Web with Web Locks API&lt;/a&gt;&lt;/span&gt; — The &lt;a href="https://javascriptweekly.com/link/188198/rss" style=" color: #3366aa;   "&gt;Web Locks API&lt;/a&gt; is a widely available browser API to allow tabs or workers with the same origin to hold and release locks.&lt;/p&gt;
  &lt;p&gt;Cesar Contreras &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/188199/rss" title="www.arshad.fyi" style=" color: #3366aa;    font-size: 1.05em;"&gt;Engineering High-Performance Parsers with Data-Oriented Design&lt;/a&gt;&lt;/span&gt; — A look into how data-oriented design helped build &lt;a href="https://javascriptweekly.com/link/188200/rss" style=" color: #3366aa;   "&gt;Yuku&lt;/a&gt;, a JavaScript parser that's &lt;a href="https://javascriptweekly.com/link/188201/rss" style=" color: #3366aa;   "&gt;faster&lt;/a&gt; than alternatives like Oxc, SWC or Babel (you can &lt;a href="https://javascriptweekly.com/link/188202/rss" style=" color: #3366aa;   "&gt;give it a spin here&lt;/a&gt;).&lt;/p&gt;
  &lt;p&gt;Arshad Yaseen &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 article is largely about building a parser in Zig but the underlying &lt;a href="https://javascriptweekly.com/link/188200/rss" style=" color: #3366aa; font-weight: 500;"&gt;Yuku&lt;/a&gt; and &lt;a href="https://javascriptweekly.com/link/188203/rss" style=" color: #3366aa; font-weight: 500;"&gt;Yuku Analyzer&lt;/a&gt; projects are worth checking out.&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/188204/rss" style=" color: #3366aa; font-weight: 500;   "&gt;HTML in Canvas: Rendering Real DOM Inside &amp;lt;canvas&amp;gt;&lt;/a&gt;  &lt;cite&gt;Agustin Barrientos&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📺 &lt;a href="https://javascriptweekly.com/link/188205/rss" style=" color: #3366aa; font-weight: 500;   "&gt;The Framework Wars are Over: Why No One Dethroned React&lt;/a&gt; – Kent's take in 11 minutes. &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;"&gt;
  &lt;a href="https://javascriptweekly.com/link/188206/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/hd77f7jirzohktslvrxp.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/188206/rss" title="microsoft.github.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Flint: Chart Specs that Compile to Vega-Lite, ECharts, or Chart.js&lt;/a&gt;&lt;/span&gt; — A Microsoft project that compiles a simple, declarative JSON-based spec of a data visualization into a form that Vega-Lite, ECharts or Chart.js can render. It's pitched at agentic use, but is a simple intermediate format humans could benefit from too.&lt;/p&gt;
  &lt;p&gt;Microsoft Research &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/188207/rss" title="www.tigerdata.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;Query Live Data. Skip the Analytics Pipeline&lt;/a&gt;&lt;/span&gt; — TimescaleDB extends Postgres for real-time analytics at scale. No second system, no pipeline. &lt;a href="https://javascriptweekly.com/link/188207/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/188208/rss" title="github.com" style=" color: #3366aa;    font-size: 1.05em;"&gt;unwasm: Import .wasm Files Like Any Other ES Module&lt;/a&gt;&lt;/span&gt; — Build-time tooling for when WASM is part of a bundled app and you want it to feel more like a normal module (e.g. &lt;code&gt;import { sum } from "sum.wasm"&lt;/code&gt;).&lt;/p&gt;
  &lt;p&gt;unjs &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/188209/rss" title="botkit.fedify.dev" style=" color: #3366aa;    font-size: 1.05em;"&gt;BotKit: Build Standalone ActivityPub Bots&lt;/a&gt;&lt;/span&gt; — A way to run a bot (or multiple bots) that Mastodon users can see and follow but without needing an account anywhere. Write it all in JavaScript and self-host with Deno, Node.js or even Cloudflare Workers.&lt;/p&gt;
  &lt;p&gt;Fedify &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/188210/rss" title="colorjs.io" style=" color: #3366aa;    font-size: 1.05em;"&gt;Color.js 0.7: 'Let’s Get Serious About Color'&lt;/a&gt;&lt;/span&gt; — A fantastic library for working with colors, following the latest specs. &lt;a href="https://javascriptweekly.com/link/188211/rss" style=" color: #3366aa;   "&gt;v0.7&lt;/a&gt; is a big update with support for new color spaces, a new gamut mapping method, and a smarter &lt;code&gt;display()&lt;/code&gt; fallback for colors not natively supported by a browser.&lt;/p&gt;
  &lt;p&gt;Lea Verou and Chris Lilley &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/188212/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Travels 2.1&lt;/a&gt; – Efficient framework-agnostic undo/redo library based on JSON patches rather than snapshots.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188213/rss" style=" color: #3366aa; font-weight: 500;   "&gt;gridstack.js 13.0&lt;/a&gt; – Mature library for creating responsive dashboard layouts with drag-and-drop support.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188214/rss" style=" color: #3366aa; font-weight: 500;   "&gt;np 12.0&lt;/a&gt; – Sindre Sorhus's "better &lt;code&gt;npm publish&lt;/code&gt;" adds support for npm 12 and staged publishing.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188215/rss" style=" color: #3366aa; font-weight: 500;   "&gt;AngularEditor 3.1&lt;/a&gt; – Simple WYSIWYG rich text editor for Angular 22+. (&lt;a href="https://javascriptweekly.com/link/188216/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Demo&lt;/a&gt;)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188217/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Pinia 4.0&lt;/a&gt; – Vue's state-management library gets leaner and goes ESM-only.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188218/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Bolt 5.0&lt;/a&gt; – Slack's official framework for building Slack apps.&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;🤖 If you can code, you can build a robot. Viam 101 is a free 90-min course — no hardware needed. &lt;a href="https://javascriptweekly.com/link/188221/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Sign up by July 31 to win a $3,500 arm&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;Flaky tests slowing down dev? &lt;a href="https://javascriptweekly.com/link/188219/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;Drowning in AI dev tools? You really only need these 3 tools to ship mobile apps: skills, MCP, and your workflow. &lt;a href="https://javascriptweekly.com/link/188220/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Read the guide&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/188222/rss" style=" color: #3366aa;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/p3bbkhfkz0skzmdw1wmj.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;Famously, the only thing Java gave JavaScript was the first four letters of its name. That goes unmentioned in &lt;a href="https://javascriptweekly.com/link/188222/rss" style=" color: #3366aa; font-weight: 500;   "&gt;▶️ this new documentary about Java&lt;/a&gt; (74 minutes), but I enjoyed learning Java's story anyway. It's from the same folks as the fantastic &lt;a href="https://javascriptweekly.com/link/188223/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Vite&lt;/a&gt;, &lt;a href="https://javascriptweekly.com/link/188224/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Angular&lt;/a&gt;, and &lt;a href="https://javascriptweekly.com/link/188225/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Node.js&lt;/a&gt; documentaries.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 &lt;a href="https://javascriptweekly.com/link/188226/rss" style=" color: #3366aa; font-weight: 500;   "&gt;ReactBench&lt;/a&gt; is a new coding agent evaluation based around models' abilities to build working, realistic React apps. GPT 5.6 leads the way for now.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://javascriptweekly.com/link/188227/rss" style=" color: #3366aa; font-weight: 500;   "&gt;shadcn/typeset&lt;/a&gt; is a typography system for rendered HTML that makes font styling and spacing simpler to configure.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cloudflare has entirely rebuilt &lt;a href="https://javascriptweekly.com/link/188228/rss" style=" color: #3366aa; font-weight: 500;   "&gt;its blog&lt;/a&gt; on top of &lt;a href="https://javascriptweekly.com/link/188229/rss" style=" color: #3366aa; font-weight: 500;   "&gt;EmDash&lt;/a&gt;, the &lt;a href="https://javascriptweekly.com/link/188230/rss" style=" color: #3366aa; font-weight: 500;   "&gt;Astro&lt;/a&gt;-powered 'spiritual successor to WordPress' it unveiled (genuinely) on April 1.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🕹️ If you want to take part in &lt;a href="https://javascriptweekly.com/link/188231/rss" style=" color: #3366aa; font-weight: 500;   "&gt;the next js13kGames&lt;/a&gt; game dev competition, the theme will be announced on August 13 with submissions due September 13.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;✨ An updated list of the &lt;a href="https://javascriptweekly.com/link/188232/rss" style=" color: #3366aa; font-weight: 500;   "&gt;top 100 starred JavaScript projects&lt;/a&gt; on GitHub.&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/795/rss" width="1" height="1" /&gt;</description>
      <pubDate>Tue, 21 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://javascriptweekly.com/issues/795</guid>
    </item>
  </channel>
</rss>
