JavaScript Weekly A newsletter of JavaScript articles, news and cool projects https://javascriptweekly.com/ TypeScript 6.0 RC and Solid 2.0 beta arrive https://javascriptweekly.com/issues/776 <table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p>#​776 — March 10, 2026</p></td> <td align="right" style="padding-right: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p><a href="proxy.php?url=https://javascriptweekly.com/link/181801/rss" style=" color: #3366aa;">Read on the Web</a></p></td> </tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 12px; padding-left: 12px;"><p>JavaScript Weekly</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181868/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/r5xkaj47ci4qmdvsdvww.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181868/rss" title="github.com" style=" color: #3366aa; font-size: 1.1em; line-height: 1.4em;">Solid v2.0.0 Beta: The <code>&lt;Suspense&gt;</code> is Over</a></span> — After a long experimental phase, Solid 2.0’s first beta lands with first-class async support where computations can return Promises or async iterables, and the reactive graph suspends and resumes around them natively. <code>&lt;Suspense&gt;</code> is retired in favor of <code>&lt;Loading&gt;</code> for initial renders, and mutations get a first-class <code>action()</code> primitive with optimistic support. For existing users the breaking changes are substantial, but there’s <a href="proxy.php?url=https://javascriptweekly.com/link/181871/rss" style=" color: #3366aa; ">a migration guide</a>.</p> <p>Ryan Carniato </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"><p>💡 Ryan also had an AI write up <a href="proxy.php?url=https://javascriptweekly.com/link/181872/rss" style=" color: #3366aa; font-weight: 600;">the architectural case for Solid 2.0</a>, framing fine-grained reactivity as the only sustainable model for an AI-agent world. He also did <a href="proxy.php?url=https://javascriptweekly.com/link/181873/rss" style=" color: #3366aa; font-weight: 600;">▶️ a livestream</a> where he tried to <em>break</em> Solid 2.0 by pushing against its limits.</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <a href="proxy.php?url=https://javascriptweekly.com/link/181802/rss" style=" color: #3366aa; "><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/3e9972d1.png" width="125" height="125" style="padding-top: 12px; padding-left: 12px; line-height: 100%; "></a> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181802/rss" title="frontendmasters.com" style=" color: #3366aa; font-size: 1.05em;">The Most Loved JavaScript Course Year After Year</a></span> — JavaScript: The Hard Parts is rated 4.92 on average by thousands of developers. Build real mental models for how JavaScript works, from execution context and closures to async behavior and modern language features.</p> <p>Frontend Masters <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181803/rss" title="devblogs.microsoft.com" style=" color: #3366aa; font-size: 1.05em;">TypeScript 6.0 Release Candidate</a></span> — v6.0 is primarily a stepping stone to the eventual Go-powered native TypeScript 7.0 due later this year and all the necessary <code>tsconfig.json</code> changes will put you in a good position for the future. There are only <a href="proxy.php?url=https://javascriptweekly.com/link/181804/rss" style=" color: #3366aa; ">a few small changes</a> in the RC vs the recent beta.</p> <p>Daniel Rosenwasser (Microsoft) </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>IN BRIEF:</strong></p> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181805/rss" style=" color: #3366aa; font-weight: 500 !important; ">TC39's 113th meeting has just started</a> with the topic of <a href="proxy.php?url=https://javascriptweekly.com/link/181806/rss" style=" color: #3366aa; font-weight: 500 !important; ">taking the Temporal API to stage 4</a> high on the agenda.</p> </li> <li> <p>📊 <a href="proxy.php?url=https://javascriptweekly.com/link/181807/rss" style=" color: #3366aa; font-weight: 500 !important; ">Minification Benchmarks</a> is a frequently updated comparison of different JavaScript minifiers. <a href="proxy.php?url=https://javascriptweekly.com/link/181808/rss" style=" color: #3366aa; font-weight: 500 !important; ">SWC</a> is in the lead overall, but <a href="proxy.php?url=https://javascriptweekly.com/link/181809/rss" style=" color: #3366aa; font-weight: 500 !important; ">Minify</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/181810/rss" style=" color: #3366aa; font-weight: 500 !important; ">Oxc's</a> minifier aren't far behind and are much faster.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181811/rss" style=" color: #3366aa; font-weight: 500 !important; ">11ty (Eleventy)</a> started life as a Node.js-powered static site generator, but now it's <a href="proxy.php?url=https://javascriptweekly.com/link/181812/rss" style=" color: #3366aa; font-weight: 500 !important; ">becoming <em>Build Awesome</em></a>, a project under the <a href="proxy.php?url=https://javascriptweekly.com/link/181813/rss" style=" color: #3366aa; font-weight: 500 !important; ">Font Awesome</a> umbrella.</p> </li> <li> <p>🇫🇷 <a href="proxy.php?url=https://javascriptweekly.com/link/181814/rss" style=" color: #3366aa; font-weight: 500 !important; ">The dotJS conference</a> is back in Paris this September 1. <a href="proxy.php?url=https://javascriptweekly.com/link/181815/rss" style=" color: #3366aa; font-weight: 500 !important; ">Its CFP</a> is open until April 28.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>RELEASES:</strong></p> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181816/rss" style=" color: #3366aa; font-weight: 500 !important; ">Node.js 25.8.0 (Current)</a> – Adds a <a href="proxy.php?url=https://javascriptweekly.com/link/181817/rss" style=" color: #3366aa; font-weight: 500 !important; "><code>--permission-audit</code> option</a> to run Node's <a href="proxy.php?url=https://javascriptweekly.com/link/181818/rss" style=" color: #3366aa; font-weight: 500 !important; ">permission model</a> in a warning-only mode.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181874/rss" style=" color: #3366aa; font-weight: 500 !important; ">Astro 6.0</a> – <code>astro dev</code> is now using Vite’s new Environment API so you can now run your exact prod runtime during dev. Also, a new Fonts API takes care of custom fonts.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181820/rss" style=" color: #3366aa; font-weight: 500 !important; ">Knockout 3.5.2</a> – The classic MVVM library gets its first update in six years!</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181821/rss" style=" color: #3366aa; font-weight: 500 !important; ">ESLint v10.0.3</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/181822/rss" style=" color: #3366aa; font-weight: 500 !important; ">ESLint v9.39.4</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181823/rss" style=" color: #3366aa; font-weight: 500 !important; ">Ember 6.11</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181824/rss" style=" color: #3366aa; font-weight: 500 !important; ">Ionic Framework 8.8</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181825/rss" style=" color: #3366aa; font-weight: 500 !important; ">React Native 0.85 RC.0</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181826/rss" style=" color: #3366aa; font-weight: 500 !important; ">pnpm v10.32.0</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181827/rss" style=" color: #3366aa; font-weight: 500 !important; ">Recharts 3.8</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181828/rss" style=" color: #3366aa; font-weight: 500 !important; ">Jest 30.3</a></p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📖  Articles and Videos</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181829/rss" title="www.patreon.com" style=" color: #3366aa; font-size: 1.05em;">Seven Years to TypeScript: Migrating 11,000 Files at Patreon</a></span> — The popular creator platform had a million lines of JavaScript on its hands, and while adopting TypeScript on new code was going well, converting <em>all</em> their code was a daunting task. This retrospective covers the tools and techniques involved.</p> <p>Gavy Aggarwal (Patreon) </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181830/rss" title="alexop.dev" style=" color: #3366aa; font-size: 1.05em;">Building a Real-Time Todo App with Jazz and Vue 3</a></span> — <a href="proxy.php?url=https://javascriptweekly.com/link/181831/rss" style=" color: #3366aa; ">Jazz</a> is a distributed database with real-time syncing and local reactive JSON state.</p> <p>Alexander Opalic </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181832/rss" title="blog.sentry.io" style=" color: #3366aa; font-size: 1.05em;">Next.js Source Maps: From Minified Chunks to Readable Stack Traces</a></span> — Your stack traces shouldn't point to random chunk files. Learn how to wire up source maps so Sentry shows the code you actually wrote.</p> <p>Sentry <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181833/rss" title="neciudan.dev" style=" color: #3366aa; font-size: 1.05em;">A Tale of Stealing <code>npm</code> Publish Tokens by Opening a GitHub Issue</a></span> — A repo had an AI-powered issue triage system that ran when any issue was opened, and the issue’s title was fed directly into the prompt… and that was just step one of the three-stage attack explained here.</p> <p>Neciu Dan </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181834/rss" title="www.bleepingcomputer.com" style=" color: #3366aa; font-size: 1.05em;">Wikipedia Hit by Self-Propagating JavaScript Worm</a></span> — A writeup of how a dormant script, accidentally triggered by a Wikimedia employee, exploited a shared global script and vandalized nearly 4,000 pages on Wikipedia’s <em>Meta-Wiki</em>.</p> <p>Lawrence Abrams (Bleeping Computer) </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181835/rss" style=" color: #3366aa; font-weight: 500 !important; ">How to Decode a VIN in JavaScript</a> – VINs (<a href="proxy.php?url=https://javascriptweekly.com/link/181836/rss" style=" color: #3366aa; font-weight: 500 !important; ">Vehicle Identification Numbers</a>) are standardized codes assigned to various types of motor vehicle. <cite>Cardog</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181837/rss" style=" color: #3366aa; font-weight: 500 !important; ">Building Async Page Transitions in Vanilla JavaScript</a> <cite>Valentin Mor</cite></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>🛠 Code &amp; Tools</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181838/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zwpikapn5kjjerntvqwg.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181838/rss" title="rv-grid.com" style=" color: #3366aa; font-size: 1.05em;">RevoGrid: High-Performance Data Grid Component</a></span> — A high-performance data grid control built for massive datasets. Integrates with Vue, Angular, React, Svelte, or can be used from vanilla JS. <a href="proxy.php?url=https://javascriptweekly.com/link/181839/rss" style=" color: #3366aa; ">Live demo</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/181840/rss" style=" color: #3366aa; ">GitHub repo.</a></p> <p>Revolist OU </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181842/rss" title="go.clerk.com" style=" color: #3366aa; font-size: 1.05em;">Clerk Core 3: Redesigned Hooks, Smaller Bundles, Agent-Ready APIs</a></span> — Redesigned useSignIn, useSignUp, and useCheckout hooks, ~50KB bundle savings, and keyless mode extended to TanStack Start, Astro, and React Router.</p> <p>Clerk <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181841/rss" title="arktype.io" style=" color: #3366aa; font-size: 1.05em;">ArkType 2.2: Use Your TypeScript Types as Runtime Validators</a></span> — A TypeScript-first validation library where types and validators are the same thing. Write a type once and it becomes both the static type and the runtime validator. In v2.2, <code>type.fn</code> brings runtime-validated <em>functions</em>, checking inputs and return values automatically.</p> <p>ArkType </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181843/rss" title="tinybase.org" style=" color: #3366aa; font-size: 1.05em;">TinyBase 8.0: A Reactive Data Store for Local-First Apps</a></span> — A reactive data store and sync engine that can be used as the entire backend for many types of app. It can stand alone or <a href="proxy.php?url=https://javascriptweekly.com/link/181844/rss" style=" color: #3366aa; ">integrate with all sorts of things</a> like cloud storage, client-side stores, SQL databases, etc. <a href="proxy.php?url=https://javascriptweekly.com/link/181845/rss" style=" color: #3366aa; ">v8.0</a> adds a middleware feature and the ability to store objects and arrays in its ‘cells’.</p> <p>James Pearce </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><span>📄</span> <a href="proxy.php?url=https://javascriptweekly.com/link/181846/rss" title="github.com" style=" color: #3366aa; font-size: 1.05em;">VMPrint: Pure JS Typesetting Engine for Perfect PDF Output</a></span> — It’s common to defer to headless Chrome instances for print-to-PDF type work, but VMPrint <em>“guarantees identical layout given identical input, down to the sub-point position of every glyph.”</em> <a href="proxy.php?url=https://javascriptweekly.com/link/181847/rss" style=" color: #3366aa; ">Here’s a sample PDF.</a></p> <p>Cosmic Iron </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181848/rss" style=" color: #3366aa; font-weight: 500 !important; ">SQLite JS 1.3</a> – Write custom SQLite functions in JavaScript.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181849/rss" style=" color: #3366aa; font-weight: 500 !important; ">Heapify 1.0</a> – Fast JavaScript priority queue, implemented using a binary heap.</p> </li> <li> <p>📺 <a href="proxy.php?url=https://javascriptweekly.com/link/181850/rss" style=" color: #3366aa; font-weight: 500 !important; ">OpenPlayer.js 3.0</a> – Modular, tree-shakeable HTML5 media player.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181851/rss" style=" color: #3366aa; font-weight: 500 !important; ">Emittery 2.0</a> – Sindre Sorhus's simple, modern async event emitter.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181852/rss" style=" color: #3366aa; font-weight: 500 !important; ">Svelte Sonner 1.1</a> – Toast notification component for Svelte apps.</p> </li> <li> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181853/rss" style=" color: #3366aa; font-weight: 500 !important; ">EmbedPDF 2.8</a> – Framework-agnostic JavaScript PDF viewer.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181854/rss" style=" color: #3366aa; font-weight: 500 !important; ">Tabulator 6.4</a> – Interactive data tables for JavaScript apps.</p> </li> <li> <p>🕹️ <a href="proxy.php?url=https://javascriptweekly.com/link/181855/rss" style=" color: #3366aa; font-weight: 500 !important; ">melonJS 18.0</a> – Lightweight HTML5 2D game engine.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181856/rss" style=" color: #3366aa; font-weight: 500 !important; ">flatted 3.4</a> – Fast, minimal circular JSON parser.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181857/rss" style=" color: #3366aa; font-weight: 500 !important; ">Poku 4.0</a> – Cross-platform test runner.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 0px; padding-left: 0px;"> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📰 Classifieds</p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>Flaky tests slowing down dev? <a href="proxy.php?url=https://javascriptweekly.com/link/181858/rss" style=" color: #3366aa; font-weight: 500 !important; ">Meticulous</a> gives engineers confidence to ship faster by autonomously testing every edge case of your web app.</p> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181859/rss" style=" color: #3366aa; font-weight: 500 !important; ">Trigger.dev</a> handles queues, retries, and long-running tasks so you can build production-ready agents and TypeScript workflows reliably at scale.</p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📢  Elsewhere in the ecosystem</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181860/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/sumcsjstjbwnmu1c6nuq.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p>It's been eight years since we last mentioned <a href="proxy.php?url=https://javascriptweekly.com/link/181860/rss" style=" color: #3366aa; font-weight: 500 !important; ">JSLinux</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181861/rss" style=" color: #3366aa; font-weight: 500 !important; ">Fabrice Bellard</a>'s JavaScript-powered Linux VM that runs in the browser. He's still working on it, and as of this week it supports x86_64, AVX-512 and APX.</p> <p>Head into <a href="proxy.php?url=https://javascriptweekly.com/link/181862/rss" style=" color: #3366aa; font-weight: 500 !important; ">a full x86_64 Alpine Linux environment</a>, and start using Git, Node, Ruby, Perl, Python, and more, right away. Hacker News users <a href="proxy.php?url=https://javascriptweekly.com/link/181863/rss" style=" color: #3366aa; font-weight: 500 !important; ">discussed some use cases</a> for it.</p> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181864/rss" style=" color: #3366aa; font-weight: 500 !important; ">The tech behind JSLinux is explained here</a> with the biggest limitation being how its Internet connection works, going through a 40KB/s capped proxy.</p> </li> <li> <p>Did you know you can <a href="proxy.php?url=https://javascriptweekly.com/link/181865/rss" style=" color: #3366aa; font-weight: 500 !important; ">use newline and tab characters in URLs</a> in HTML and they'll be ignored?</p> </li> <li> <p>How long does it take to <a href="proxy.php?url=https://javascriptweekly.com/link/181866/rss" style=" color: #3366aa; font-weight: 500 !important; ">compile Node.js on NVIDIA's tiny Jetson Nano device?</a> About 27 hours.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181867/rss" style=" color: #3366aa; font-weight: 500 !important; ">How to recreate the Flappy Bird game</a> with CSS and no JavaScript at all.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </div> </td></tr> </table> <img src="proxy.php?url=https://javascriptweekly.com/open/776/rss" width="1" height="1" /> Tue, 10 Mar 2026 00:00:00 +0000 https://javascriptweekly.com/issues/776 External import maps, a big Bun release, and Node.js schedule changes https://javascriptweekly.com/issues/775 <table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p>#​775 — March 3, 2026</p></td> <td align="right" style="padding-right: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p><a href="proxy.php?url=https://javascriptweekly.com/link/181402/rss" style=" color: #3366aa;">Read on the Web</a></p></td> </tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 12px; padding-left: 12px;"><p>JavaScript Weekly</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181455/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/yd2s7wyaubxm1olt8hnu.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181455/rss" title="bun.com" style=" color: #3366aa; font-size: 1.1em; line-height: 1.4em;">Bun v1.3.10 Released: A Surprisingly Big Update</a></span> — Bun’s REPL has been completely rewritten with many improvements (both practical and cosmetic), there's a <code>--compile --target=browser</code> option for building self-contained HTML files with all JS, CSS, and assets included (ideal for simple JS-powered single page apps), full support for TC39 stage 3 <a href="proxy.php?url=https://javascriptweekly.com/link/181456/rss" style=" color: #3366aa; ">ES decorators</a>, a faster event loop, barrel import optimization, and more.</p> <p>Jarred Sumner </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <a href="proxy.php?url=https://javascriptweekly.com/link/181403/rss" style=" color: #3366aa; "><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/bd4a72e4.png" width="110" height="110" style="padding-top: 12px; padding-left: 12px; line-height: 100%; "></a> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181403/rss" title="" style=" color: #3366aa; font-size: 1.05em;">Still Writing Tests Manually? Meticulous AI Is Here</a></span> — Notion, Dropbox, Wiz and LaunchDarkly now use a testing paradigm they can’t work without. Built by former Palantir engineers, Meticulous automatically creates an evolving suite of E2E UI tests, delivering exhaustive coverage with no developer effort.</p> <p>Meticulous <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181457/rss" title="lea.verou.me" style=" color: #3366aa; font-size: 1.05em;">External Import Maps, Today!</a></span> — Several weeks ago Lea posted about <a href="proxy.php?url=https://javascriptweekly.com/link/181458/rss" style=" color: #3366aa; ">web dependencies being broken</a>, but now she has a solution. The core technique employed to emulate support for external import maps isn't obvious, despite being simple, but is already <a href="proxy.php?url=https://javascriptweekly.com/link/181459/rss" style=" color: #3366aa; ">offered by JSPM 4.0.</a></p> <p>Lea Verou </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>IN BRIEF:</strong></p> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181404/rss" style=" color: #3366aa; font-weight: 500 !important; "><em>The React Foundation</em> has officially launched</a> taking over ownership of React, React Native and JSX. It has a board of eight founding members (including Meta) with Seth Webster, former head of React at Meta, as exec director.</p> </li> <li> <p>It's not formal yet, but <a href="proxy.php?url=https://javascriptweekly.com/link/181405/rss" style=" color: #3366aa; font-weight: 500 !important; ">this preview post reveals how Node.js's release schedule is changing</a> later this year (one major release per year, every release to be LTS, with no more odd/even distinction).</p> </li> <li> <p>📢 Monthly roundups have landed from <a href="proxy.php?url=https://javascriptweekly.com/link/181406/rss" style=" color: #3366aa; font-weight: 500 !important; ">Svelte</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181407/rss" style=" color: #3366aa; font-weight: 500 !important; ">ViteLand / VoidZero</a>, and <a href="proxy.php?url=https://javascriptweekly.com/link/181408/rss" style=" color: #3366aa; font-weight: 500 !important; ">Astro.</a></p> </li> <li> <p>🔒 The Angular team <a href="proxy.php?url=https://javascriptweekly.com/link/181409/rss" style=" color: #3366aa; font-weight: 500 !important; ">explains two recently patched vulnerabilities in Angular.</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181410/rss" style=" color: #3366aa; font-weight: 500 !important; ">The Navigation API is now Baseline Newly Available</a> across all major browsers.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>RELEASES:</strong></p> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181460/rss" style=" color: #3366aa; font-weight: 500 !important; ">Deno 2.7</a> – The alternative runtime stabilizes Temporal API support, supports Windows on ARM, adds <code>package.json</code> <code>overrides</code> support, and more.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181411/rss" style=" color: #3366aa; font-weight: 500 !important; ">Expo SDK 55</a> – The popular React Native framework/toolchain.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181412/rss" style=" color: #3366aa; font-weight: 500 !important; ">Shiki 4.0</a> – TextMate grammar powered, VS Code-like syntax highlighter.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181413/rss" style=" color: #3366aa; font-weight: 500 !important; ">Angular 21.2</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181414/rss" style=" color: #3366aa; font-weight: 500 !important; ">Mediabunny 1.35</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181415/rss" style=" color: #3366aa; font-weight: 500 !important; ">Neo.mjs 12.0</a></p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📖  Articles and Videos</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181416/rss" title="hacks.mozilla.org" style=" color: #3366aa; font-size: 1.05em;">Making WebAssembly a First-Class Citizen on the Web</a></span> — WASM has come a long way but remains tricky to work with on the Web, with even performing a <code>console.log</code> requiring a lot of glue code. Ryan makes the case that the <a href="proxy.php?url=https://javascriptweekly.com/link/181480/rss" style=" color: #3366aa; ">WebAssembly Component Model</a> could change this by letting modules bind directly to browser APIs, load directly from <code>script</code> tags, and more.</p> <p>Ryan Hunt </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181479/rss" title="blog.cloudflare.com" style=" color: #3366aa; font-size: 1.05em;">We Deserve a Better Streams API for JavaScript</a></span> — <em>“I’m publishing this to start a conversation,”</em> says James who shows off an alternative approach to Web streams that works around the current standard’s <em>“fundamental usability and performance issues.”</em> The end results and James' extensive experience in this area make for a compelling argument.</p> <p>James M Snell </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181419/rss" title="workos.com" style=" color: #3366aa; font-size: 1.05em;"><code>npx workos:</code> An AI Agent That Writes Auth Directly Into Your Codebase</a></span> — Reads your project, detects your framework, writes the integration, then typechecks and fixes its own build errors.</p> <p>WorkOS <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181423/rss" title="www.therantydev.com" style=" color: #3366aa; font-size: 1.05em;">The Illusion of JavaScript-Powered 'DRM'</a></span> — An explanation of why building a DRM/copy protection system purely in JavaScript (rather than <a href="proxy.php?url=https://javascriptweekly.com/link/181424/rss" style=" color: #3366aa; ">EME</a>-based approaches) is ultimately just <em>“sophisticated friction”</em>, at best, and uses a tale of breaking a (NSFW) platform’s protection to make the point.</p> <p>Ahmed Arat </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181420/rss" title="blog.cloudflare.com" style=" color: #3366aa; font-size: 1.05em;">How Cloudflare Rebuilt Next.js with AI in a Week</a></span> — <a href="proxy.php?url=https://javascriptweekly.com/link/181421/rss" style=" color: #3366aa; ">vinext</a> is an experimental, Vite-based reimplementation of Next.js’s API surface, letting existing apps run in more environments, though with <a href="proxy.php?url=https://javascriptweekly.com/link/181422/rss" style=" color: #3366aa; ">some tradeoffs.</a></p> <p>Steve Faulkner (Cloudflare) </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181417/rss" title="www.raymondcamden.com" style=" color: #3366aa; font-size: 1.05em;">Using Val Town to Get Me to the Movies</a></span> — <a href="proxy.php?url=https://javascriptweekly.com/link/181418/rss" style=" color: #3366aa; ">Val Town</a> is a fantastic platform for quickly writing and deploying JavaScript-powered services. Like this one!</p> <p>Raymond Camden </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181428/rss" style=" color: #3366aa; font-weight: 500 !important; ">Sticky Grid Scroll: Building a Scroll-Driven Animated Grid</a> – I’m not a huge fan of scroll-driven effects, but this one <a href="proxy.php?url=https://javascriptweekly.com/link/181429/rss" style=" color: #3366aa; font-weight: 500 !important; ">does look neat.</a> <cite>Theo Plawinski</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181461/rss" style=" color: #3366aa; font-weight: 500 !important; ">From <code>instanceof</code> to <code>Error.isError</code> for Safer Error Checking</a> <cite>Matt Smith</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181462/rss" style=" color: #3366aa; font-weight: 500 !important; ">Proxying Fetch Requests in Server-Side JavaScript</a> <cite>Nicholas C. Zakas</cite></p> <p>▶️ <a href="proxy.php?url=https://javascriptweekly.com/link/181430/rss" style=" color: #3366aa; font-weight: 500 !important; ">Why I Chose Electron Over Native (And I’d Do It Again)</a> <cite>Syntax Podcast</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181425/rss" style=" color: #3366aa; font-weight: 500 !important; ">Using React Native to Create Meta Quest VR Apps</a> <cite>Chludziński, Jaworski, and Leyendecker</cite></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>🛠 Code &amp; Tools</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181441/rss" title="txikijs.org" style=" color: #3366aa; font-size: 1.05em;">txiki.js: A Small, Powerful JavaScript Runtime</a></span> — Stands on the shoulders of QuickJS-ng and libuv and aims to support the latest ECMAScript features while being <a href="proxy.php?url=https://javascriptweekly.com/link/181478/rss" style=" color: #3366aa; ">WinterTC</a> compliant. <a href="proxy.php?url=https://javascriptweekly.com/link/181442/rss" style=" color: #3366aa; ">GitHub repo.</a></p> <p>Saúl Ibarra Corretgé </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181431/rss" title="numpyts.dev" style=" color: #3366aa; font-size: 1.05em;">numpy-ts: A NumPy Implementation for TypeScript</a></span> — A recreation of <a href="proxy.php?url=https://javascriptweekly.com/link/181432/rss" style=" color: #3366aa; ">NumPy</a>, a fundamental piece of the Python scientific computing ecosystem, that works in the browser, Node, Bun, and Deno. 94% of NumPy’s API is covered so far and there’s <a href="proxy.php?url=https://javascriptweekly.com/link/181433/rss" style=" color: #3366aa; ">an online playground</a> to give it a try.</p> <p>Nicolas Dupont </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181434/rss" title="www.tigerdata.com" style=" color: #3366aa; font-size: 1.05em;">Ship Real-Time Features Without Real-Time Complexity</a></span> — TimescaleDB extends Postgres: hypertables, 95% compression, continuous aggregates. Run analytics on live data. <a href="proxy.php?url=https://javascriptweekly.com/link/181434/rss" style=" color: #3366aa; ">Try free</a>.</p> <p>Tiger Data (creators of TimescaleDB) <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181435/rss" title="yoopta.dev" style=" color: #3366aa; font-size: 1.05em;">Yoopta Editor 6.0: A Headless Rich Text Editor for React</a></span> — MIT-licensed library for creating block-based, Notion-style rich text editing experiences. It’s headless at heart, but comes with a variety of UI components to get started fast. <a href="proxy.php?url=https://javascriptweekly.com/link/181436/rss" style=" color: #3366aa; ">The playground</a> offers a live example.</p> <p>Akhmed Ibragimov </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181437/rss" title="adonisjs.com" style=" color: #3366aa; font-size: 1.05em;">AdonisJS v7 Released: 'Batteries-Included' Node.js Framework</a></span> — A popular framework that includes auth, ORM, queues, testing, etc. With v7 comes <a href="proxy.php?url=https://javascriptweekly.com/link/181438/rss" style=" color: #3366aa; ">an all new web site</a>, OpenTelemetry integration, new starter kits to rapidly build new apps, and more.</p> <p>Harminder Virk </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><span>🎨</span> <a href="proxy.php?url=https://javascriptweekly.com/link/181439/rss" title="lokeshdhakar.com" style=" color: #3366aa; font-size: 1.05em;">Color Thief 3.0: Grab Color Palettes from Images</a></span> — Given an image, this uses <code>canvas</code> to return a list of the dominant colors. Works in browsers or Node. Now with OKLCH support, Web Worker offloading, ‘live extraction’ for video, canvas and image elements, and more. <a href="proxy.php?url=https://javascriptweekly.com/link/181440/rss" style=" color: #3366aa; ">GitHub repo.</a></p> <p>Lokesh Dhakar </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><span>📊</span> <a href="proxy.php?url=https://javascriptweekly.com/link/181443/rss" title="valor-software.com" style=" color: #3366aa; font-size: 1.05em;">ng2-charts: Chart.js-Based Charting Library for Angular</a></span> — Now with Angular 20 support.</p> <p>Valor Labs </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181444/rss" title="github.com" style=" color: #3366aa; font-size: 1.05em;">vue-superselect: A Headless Select/Combobox for Vue 3</a></span></p> <p>Nemanja Malesija </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181445/rss" style=" color: #3366aa; font-weight: 500 !important; ">React PDF 10.4</a> – Display PDFs in React apps. <a href="proxy.php?url=https://javascriptweekly.com/link/181446/rss" style=" color: #3366aa; font-weight: 500 !important; ">v10.4</a> adds the ability to override colors used in rendering.</p> </li> <li> <p>🕹️ <a href="proxy.php?url=https://javascriptweekly.com/link/181447/rss" style=" color: #3366aa; font-weight: 500 !important; ">JSNES 2.0</a> – JavaScript NES emulator for browsers and Node. (<a href="proxy.php?url=https://javascriptweekly.com/link/181448/rss" style=" color: #3366aa; font-weight: 500 !important; ">Demo.</a>)</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181449/rss" style=" color: #3366aa; font-weight: 500 !important; ">Milkdown 7.19</a> – Plugin-driven WYSIWYG markdown editor framework.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181450/rss" style=" color: #3366aa; font-weight: 500 !important; ">Peggy 5.1</a> – Simple parser generator.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📢  Elsewhere in the ecosystem</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181463/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/gdwsmsikbuphb1tyqcm8.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p>🎉 Three weeks ago we featured <a href="proxy.php?url=https://javascriptweekly.com/link/181464/rss" style=" color: #3366aa; font-weight: 500 !important; ">npmx.dev</a>, a new, fast way to browse and search the official npm registry. Things have got more serious this week with <a href="proxy.php?url=https://javascriptweekly.com/link/181463/rss" style=" color: #3366aa; font-weight: 500 !important; ">a full announcement post about the site's alpha release</a>, coupled with a <a href="proxy.php?url=https://javascriptweekly.com/link/181465/rss" style=" color: #3366aa; font-weight: 500 !important; ">flurry</a> of <a href="proxy.php?url=https://javascriptweekly.com/link/181466/rss" style=" color: #3366aa; font-weight: 500 !important; ">enthusiastic</a> <a href="proxy.php?url=https://javascriptweekly.com/link/181467/rss" style=" color: #3366aa; font-weight: 500 !important; ">blog</a> <a href="proxy.php?url=https://javascriptweekly.com/link/181468/rss" style=" color: #3366aa; font-weight: 500 !important; ">posts</a> from around <a href="proxy.php?url=https://javascriptweekly.com/link/181469/rss" style=" color: #3366aa; font-weight: 500 !important; ">the community</a> celebrating the project. I can't remember the last time a JavaScript project attracted so many blog posts at the same time.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181451/rss" style=" color: #3366aa; font-weight: 500 !important; ">Locutus</a> is a curious project that offers TypeScript ports of standard libraries from fifteen other programming languages (e.g. PHP, Go, Python, Ruby).</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181452/rss" style=" color: #3366aa; font-weight: 500 !important; ">The results of the <em>State of React Native 2025</em> survey</a> have been released by Software Mansion and Devographics.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181453/rss" style=" color: #3366aa; font-weight: 500 !important; ">Detailed notes for performing a TypeScript 5.x to 6.0 migration.</a> The author suggests it might be handy to feed to an AI agent of your choice.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181470/rss" style=" color: #3366aa; font-weight: 500 !important; ">An interactive version</a> of the <a href="proxy.php?url=https://javascriptweekly.com/link/181471/rss" style=" color: #3366aa; font-weight: 500 !important; ">famous xkcd comic</a> about single-person dependencies, courtesy of <a href="proxy.php?url=https://javascriptweekly.com/link/181472/rss" style=" color: #3366aa; font-weight: 500 !important; ">p5.js.</a></p> </li> <li> <p>The <a href="proxy.php?url=https://javascriptweekly.com/link/181473/rss" style=" color: #3366aa; font-weight: 500 !important; ">Drizzle ORM</a> team has <a href="proxy.php?url=https://javascriptweekly.com/link/181474/rss" style=" color: #3366aa; font-weight: 500 !important; ">joined PlanetScale.</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181454/rss" style=" color: #3366aa; font-weight: 500 !important; ">A list of little, fun programming languages.</a></p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </div> </td></tr> </table> <img src="proxy.php?url=https://javascriptweekly.com/open/775/rss" width="1" height="1" /> Tue, 3 Mar 2026 00:00:00 +0000 https://javascriptweekly.com/issues/775 Oxfmt beta: 30x faster than Prettier, 100% compatible https://javascriptweekly.com/issues/774 <table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p>#​774 — February 24, 2026</p></td> <td align="right" style="padding-right: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p><a href="proxy.php?url=https://javascriptweekly.com/link/181155/rss" style=" color: #3366aa;">Read on the Web</a></p></td> </tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 12px; padding-left: 12px;"><p>JavaScript Weekly</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181088/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/jceavinnztxzgohscekg.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181088/rss" title="oxc.rs" style=" color: #3366aa; font-size: 1.1em; line-height: 1.4em;">Oxfmt Beta: A Fast, Rust-Powered JavaScript Code Formatter</a></span> — A <strong>100% <a href="proxy.php?url=https://javascriptweekly.com/link/181089/rss" style=" color: #3366aa; ">Prettier</a>-compatible</strong> JavaScript code formatter (and sister project of <a href="proxy.php?url=https://javascriptweekly.com/link/181090/rss" style=" color: #3366aa; ">Oxlint</a>) that boasts being 30x faster than Prettier and 3x faster than <a href="proxy.php?url=https://javascriptweekly.com/link/181091/rss" style=" color: #3366aa; ">Biome.</a> Since the alpha, it now supports embedded language formatting (JSX, YAML, HTML, etc), Tailwind CSS <a href="proxy.php?url=https://javascriptweekly.com/link/181093/rss" style=" color: #3366aa; ">class sorting</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181094/rss" style=" color: #3366aa; ">import sorting</a>, and more.</p> <p>Boshen, Dunqing, and Sugiura (VoidZero) </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <a href="proxy.php?url=https://javascriptweekly.com/link/181087/rss" style=" color: #3366aa; "><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/1cb4f684.png" width="148" height="110" style="padding-top: 12px; padding-left: 12px; line-height: 100%; "></a> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181087/rss" title="developer.mescius.com" style=" color: #3366aa; font-size: 1.05em;">FlexGrid by Wijmo: The Industry-Leading JavaScript Datagrid</a></span> — A fast and flexible DataGrid for building modern web apps. Key features and virtualized rendering are included in the core grid module. Pick &amp; choose special features to keep your app small. Built for JavaScript, extended to Angular, React, and Vue.</p> <p>Wijmo From MESCIUS <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>IN BRIEF:</strong></p> <ul> <li> <p>Martin Kleppe, known for his creative experiments like <a href="proxy.php?url=https://javascriptweekly.com/link/181095/rss" style=" color: #3366aa; font-weight: 500 !important; ">tixy.land</a>, has created a <a href="proxy.php?url=https://javascriptweekly.com/link/181096/rss" style=" color: #3366aa; font-weight: 500 !important; ">scrolling bitmap quine</a> in just 666 characters of HTML and JavaScript. <a href="proxy.php?url=https://javascriptweekly.com/link/181097/rss" style=" color: #3366aa; font-weight: 500 !important; ">Here's the annotated source</a> so you can see how it works.</p> </li> <li> <p>In the Oracle vs Deno JavaScript trademark case, Oracle has asked <a href="proxy.php?url=https://javascriptweekly.com/link/181157/rss" style=" color: #3366aa; font-weight: 500 !important; ">for a two month extension to proceedings</a>, which <a href="proxy.php?url=https://javascriptweekly.com/link/181099/rss" style=" color: #3366aa; font-weight: 500 !important; ">Deno has agreed to.</a></p> </li> <li> <p>Patrick Brosset notes that, as of last month's release of Firefox 147, <a href="proxy.php?url=https://javascriptweekly.com/link/181100/rss" style=" color: #3366aa; font-weight: 500 !important; ">you can now use JS modules in service workers</a> on all major browsers.</p> </li> <li> <p>A cute technical trick for <a href="proxy.php?url=https://javascriptweekly.com/link/181101/rss" style=" color: #3366aa; font-weight: 500 !important; ">using the browser's <code>canvas</code> element to compress textual data from JavaScript.</a></p> </li> </ul> <p><strong>RELEASES:</strong></p> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181102/rss" style=" color: #3366aa; font-weight: 500 !important; ">Vuetify 4.0</a> – Vue framework for building responsive UIs. (<a href="proxy.php?url=https://javascriptweekly.com/link/181103/rss" style=" color: #3366aa; font-weight: 500 !important; ">Upgrade docs.</a>)</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181104/rss" style=" color: #3366aa; font-weight: 500 !important; ">npm v11.10.0</a> – Maintainers can now add/update trusted publishing configs across multiple packages simultaneously. There's also a new <code>--min-release-age</code> option.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181105/rss" style=" color: #3366aa; font-weight: 500 !important; ">Node.js v25.7.0 (Current)</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/181106/rss" style=" color: #3366aa; font-weight: 500 !important; ">v24.14.0 (LTS)</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181107/rss" style=" color: #3366aa; font-weight: 500 !important; ">ESLint 10.0.2</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181109/rss" style=" color: #3366aa; font-weight: 500 !important; ">Hono 4.12</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181110/rss" style=" color: #3366aa; font-weight: 500 !important; ">Deno 2.6.10</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181111/rss" style=" color: #3366aa; font-weight: 500 !important; ">Electron 40.6</a>, <a href="proxy.php?url=https://javascriptweekly.com/link/181112/rss" style=" color: #3366aa; font-weight: 500 !important; ">Three.js r183</a></p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📖  Articles and Videos</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181113/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/zycphwmqibxis7axptyu.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181113/rss" title="cpojer.net" style=" color: #3366aa; font-size: 1.05em;">The Fastest Frontend Tooling for Humans and AI</a></span> — Christoph (of Jest fame) covers his preferred tools for getting your JavaScript tool stack running as fast as possible. It’s also intended for LLMs to process via <a href="proxy.php?url=https://javascriptweekly.com/link/181114/rss" style=" color: #3366aa; ">this Markdown version.</a></p> <p>Christoph Nakazawa </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181115/rss" title="hacks.mozilla.org" style=" color: #3366aa; font-size: 1.05em;">Goodbye <code>innerHTML</code>, Hello <code>setHTML</code> for Stronger XSS Protection</a></span> — As of v148, Firefox <a href="proxy.php?url=https://javascriptweekly.com/link/181116/rss" style=" color: #3366aa; ">supports</a> the <a href="proxy.php?url=https://javascriptweekly.com/link/181117/rss" style=" color: #3366aa; ">Sanitizer API.</a> Rather than assigning HTML to DOM nodes with <code>innerHTML</code>, you can use <a href="proxy.php?url=https://javascriptweekly.com/link/181118/rss" style=" color: #3366aa; "><code>setHTML</code></a> for safety by default. It’s a cutting-edge feature, with Chrome 146 (beta) also adding support, but nothing in Safari yet, so <a href="proxy.php?url=https://javascriptweekly.com/link/181119/rss" style=" color: #3366aa; ">DOMPurify</a> will remain useful for a while.</p> <p>Mozilla Hacks </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181120/rss" title="go.clerk.com" style=" color: #3366aa; font-size: 1.05em;">Clerk's Free Tier Now Covers 50,000 MRUs</a></span> — Up from 10K. MFA included in Pro. Unlimited apps on all plans. No per-app upgrades anymore.</p> <p>Clerk <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181121/rss" title="blog.platformatic.dev" style=" color: #3366aa; font-size: 1.05em;">Halving Node.js Memory Usage with Pointer Compression</a></span> — Cloudflare, Igalia, and the Node project have collaborated on <code>node-caged</code>, a Node.js 25 Docker image with V8 pointer compression enabled, yielding up to 50% memory savings. Matteo digs into all the details.</p> <p>Matteo Collina </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📺 <a href="proxy.php?url=https://javascriptweekly.com/link/181122/rss" style=" color: #3366aa; font-weight: 500 !important; ">My Angular Stack in 2026</a> – An opinionated walk through tools the author would pick if starting a new Angular project now. <cite>Rainer Hahnekamp</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181123/rss" style=" color: #3366aa; font-weight: 500 !important; ">How to Publish to npm from GitHub Actions</a> – Using the new npm OIDC trusted publishing workflow. <cite>Gleb Bahmutov</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181124/rss" style=" color: #3366aa; font-weight: 500 !important; ">Building an Endless Procedural Snake with Three.js and WebGL</a> <cite>Sujen Phea</cite></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>🛠 Code &amp; Tools</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181125/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/jjew9kogqu11p8nqfugy.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181125/rss" title="openseadragon.github.io" style=" color: #3366aa; font-size: 1.05em;">OpenSeadragon 6.0: A Web Viewer for High Resolution Images</a></span> — A big step forward for a project that’s almost 15 years old, and one of few stable, trusty options for rendering ultra-high resolution images for users to zoom into and pan around. <a href="proxy.php?url=https://javascriptweekly.com/link/181126/rss" style=" color: #3366aa; ">Version 6</a> introduces a new async and cache-managed pipeline, making it <em>far</em> more efficient at scale.</p> <p>OpenSeadragon Contributors </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"><p>💡 OpenSeadragon was recently used as the basis for the <a href="proxy.php?url=https://javascriptweekly.com/link/181127/rss" style=" color: #3366aa; font-weight: 600;">Isometric NYC</a> (well worth reading about in its own right!) project.</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181128/rss" title="surveyjs.io" style=" color: #3366aa; font-size: 1.05em;">SurveyJS: JavaScript Libraries for Dynamic Web Forms</a></span> — Build JSON-driven forms in your app (React/Angular/Vue) without SaaS limitations. Keep full ownership of your data.</p> <p>SurveyJS <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181129/rss" title="mikemcl.github.io" style=" color: #3366aa; font-size: 1.05em;">bignumber.js 10.0: Library for Arbitrary-Precision Arithmetic</a></span> — Works around limitations of JavaScript’s <code>Number</code> and <code>BigInt</code> types, such as if you need to work with very large non-integers. Usefully, the library is included on the page so you can play with it in the JS console.</p> <p>Michael Mclaughlin </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><span>⏳</span> <a href="proxy.php?url=https://javascriptweekly.com/link/181130/rss" title="slowmo.dev" style=" color: #3366aa; font-size: 1.05em;">Slowmo: Slow Down, Pause, or Speed Up Time</a></span> — A tool you can use either as a library or browser extension that slows down time in the browser for debugging and testing purposes. It slows down <a href="proxy.php?url=https://javascriptweekly.com/link/181131/rss" style=" color: #3366aa; ">numerous things</a> including CSS animations, transitions, and <code>requestAnimationFrame</code>.</p> <p>Francois Laberge </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181132/rss" title="www.react.doctor" style=" color: #3366aa; font-size: 1.05em;">React Doctor: Give Your React Code a Quick Check-Up</a></span> — Fresh from the creator of <a href="proxy.php?url=https://javascriptweekly.com/link/181133/rss" style=" color: #3366aa; ">React Scan</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/181134/rss" style=" color: #3366aa; ">React Grab</a>, a new tool that scans your codebase and gives you a 0-100 score. (<a href="proxy.php?url=https://javascriptweekly.com/link/181135/rss" style=" color: #3366aa; ">GitHub repo.</a>)</p> <p>Aiden Bai </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"><p>💡 <a href="proxy.php?url=https://javascriptweekly.com/link/181136/rss" style=" color: #3366aa; font-weight: 600;">Angular Doctor</a> is a similar project for Angular apps inspired by <em>React Doctor.</em></p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/181137/rss" title="vue-scrollama.pages.dev" style=" color: #3366aa; font-size: 1.05em;">Vue Scrollama 3.0: Vue Component for Scroll-Driven Interactions</a></span> — <a href="proxy.php?url=https://javascriptweekly.com/link/181138/rss" style=" color: #3366aa; ">Scrollama</a> is a library for doing so called ‘scrollytelling’ where scroll position affects the presence of certain elements in the viewport. This project makes it easier to use with Vue.</p> <p>Vignesh Shenoy </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181139/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/p5f0dgiqilhycsrylmdo.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181139/rss" style=" color: #3366aa; font-weight: 500 !important; ">Beautiful Mermaid 1.0</a> – Render Mermaid diagram markup to SVG or ASCII/Unicode outputs <em>(above)</em> from JavaScript.</p> </li> <li> <p>📊 <a href="proxy.php?url=https://javascriptweekly.com/link/181140/rss" style=" color: #3366aa; font-weight: 500 !important; ">Plotly.js 3.4</a> – Standalone data visualization library covering charts, graphs, maps, and more. <a href="proxy.php?url=https://javascriptweekly.com/link/181141/rss" style=" color: #3366aa; font-weight: 500 !important; ">Examples.</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181156/rss" style=" color: #3366aa; font-weight: 500 !important; ">pnpm v10.30.0</a> – <a href="proxy.php?url=https://javascriptweekly.com/link/181143/rss" style=" color: #3366aa; font-weight: 500 !important; "><code>pnpm why</code></a> now shows a <em>reverse</em> dependency tree.</p> </li> <li> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/181144/rss" style=" color: #3366aa; font-weight: 500 !important; ">DOCX 9.6.0</a> – Generate/modify <code>.docx</code> files from JavaScript.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 0px; padding-left: 0px;"> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📰 Classifieds</p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>💛 <a href="proxy.php?url=https://javascriptweekly.com/link/181145/rss" style=" color: #3366aa; font-weight: 500 !important; ">JSNation</a> | the key web dev conference | June 11 &amp; 15. <a href="proxy.php?url=https://javascriptweekly.com/link/181145/rss" style=" color: #3366aa; font-weight: 500 !important; ">Don’t miss out</a> - 50+ talks, 1.5K devs to connect, Amsterdam vibes, &amp; global access.</p> <p>Ex‑Palantir engineers built <a href="proxy.php?url=https://javascriptweekly.com/link/181146/rss" style=" color: #3366aa; font-weight: 500 !important; ">Meticulous</a>, an E2E UI testing tool that automatically covers every edge case, boosting product quality and development speed.</p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📢  Elsewhere in the ecosystem</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/181147/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/cwqopj3owsa5xzfmajth.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p>Play with a complete <a href="proxy.php?url=https://javascriptweekly.com/link/181147/rss" style=" color: #3366aa; font-weight: 500 !important; ">Windows 3.11 environment in your browser.</a> A lot of fun! There's a recreation of 90s search engine <em>Altavista</em> <em>(above)</em>, a version of mIRC that connects to an actual IRC server, and a variety of classic games.</p> </li> <li> <p>Andrew Nesbitt shares <a href="proxy.php?url=https://javascriptweekly.com/link/181148/rss" style=" color: #3366aa; font-weight: 500 !important; ">some useful pointers on Git's 'magic' files</a> including <code>.gitignore</code>, <code>.gitmessage</code>, and other files that affect Git's behavior.</p> </li> <li> <p>It used to be cool to emulate CPUs and consoles in JavaScript. But now <a href="proxy.php?url=https://javascriptweekly.com/link/181149/rss" style=" color: #3366aa; font-weight: 500 !important; ">someone's made an x86 CPU emulator in CSS!</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181150/rss" style=" color: #3366aa; font-weight: 500 !important; ">Hologram</a> is an interesting web framework for the Elixir language that compiles Elixir front-end code to JavaScript with <a href="proxy.php?url=https://javascriptweekly.com/link/181151/rss" style=" color: #3366aa; font-weight: 500 !important; ">a striking level of success.</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/181152/rss" style=" color: #3366aa; font-weight: 500 !important; ">Tailwind CSS v4.2</a> introduces new mauve, olive, mist and taupe color palettes to the default theme.</p> </li> <li> <p>🎉 <a href="proxy.php?url=https://javascriptweekly.com/link/181153/rss" style=" color: #3366aa; font-weight: 500 !important; ">Angular has just passed 100K GitHub stars!</a></p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </div> </td></tr> </table> <img src="proxy.php?url=https://javascriptweekly.com/open/774/rss" width="1" height="1" /> Tue, 24 Feb 2026 00:00:00 +0000 https://javascriptweekly.com/issues/774 Electrobun v1: Bun-powered desktop apps in 12MB bundles https://javascriptweekly.com/issues/773 <table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p>#​773 — February 17, 2026</p></td> <td align="right" style="padding-right: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "><p><a href="proxy.php?url=https://javascriptweekly.com/link/180783/rss" style=" color: #3366aa;">Read on the Web</a></p></td> </tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 12px; padding-left: 12px;"><p>JavaScript Weekly</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/180785/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/r2fpf9tqoyfd43aqs1pc.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180785/rss" title="tanstack.com" style=" color: #3366aa; font-size: 1.1em; line-height: 1.4em;">TanStack Hotkeys: A Type-Safe, Cross-Platform Hotkey Library</a></span> — The <a href="proxy.php?url=https://javascriptweekly.com/link/180786/rss" style=" color: #3366aa; ">TanStack family</a> gains a new member: <em>Hotkeys</em>, an alpha-stage universal keyboard interaction toolkit. It handles cross-environment quirks, supports multi-step sequences (like Vim commands or cheat codes), and can record user shortcuts. <a href="proxy.php?url=https://javascriptweekly.com/link/180787/rss" style=" color: #3366aa; ">Here's the full pitch.</a></p> <p>TanStack LLC </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"><p>💡 Being in alpha, the focus in the docs is on React for now, but it's not React only, and they're looking for help with Solid, Angular, Svelte, and Vue adapters.</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <a href="proxy.php?url=https://javascriptweekly.com/link/180784/rss" style=" color: #3366aa; "><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/8572b4a4.png" width="110" height="110" style="padding-top: 12px; padding-left: 12px; line-height: 100%; "></a> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180784/rss" title="" style=" color: #3366aa; font-size: 1.05em;">Still Writing Tests Manually? Meticulous AI Is Here</a></span> — Notion, Dropbox, Wiz, and LaunchDarkly have found a new testing paradigm - and they can't imagine working without it. Built by ex-Palantir engineers, Meticulous autonomously creates a continuously evolving suite of E2E UI tests that delivers near-exhaustive coverage with zero developer effort.</p> <p>Meticulous <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180788/rss" title="devblogs.microsoft.com" style=" color: #3366aa; font-size: 1.05em;">Announcing TypeScript 6.0 Beta</a></span> — v6.0 is largely a <em>“time to clean up your tsconfig”</em> release, designed to bridge the transition to the <a href="proxy.php?url=https://javascriptweekly.com/link/180789/rss" style=" color: #3366aa; ">Go-powered native TypeScript 7</a> later this year. Be aware of some tweaks, like <code>types</code> defaulting to <code>[]</code> and <code>--strict</code> now being true by default, among <a href="proxy.php?url=https://javascriptweekly.com/link/180790/rss" style=" color: #3366aa; ">many more breaking changes and deprecations.</a></p> <p>Microsoft </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>IN BRIEF:</strong></p> <ul> <li> <p>📊 Hot on the heels of the recent State of JS survey results come the <a href="proxy.php?url=https://javascriptweekly.com/link/180791/rss" style=" color: #3366aa; font-weight: 500 !important; "><em>State of React</em> results.</a></p> </li> <li> <p>🤖 <a href="proxy.php?url=https://javascriptweekly.com/link/180792/rss" style=" color: #3366aa; font-weight: 500 !important; ">Google shows off a preview of WebMCP</a>, an attempt to create a standard way for web sites to offer up abilities for AI agents to use.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><strong>RELEASES:</strong></p> <ul> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180793/rss" style=" color: #3366aa; font-weight: 500 !important; ">Biome 2.4</a> – The formatting/linting tool can now handle embedded CSS &amp; GraphQL in JS files, improves Vue and Svelte support, and adds HTML accessibility linting rules.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180794/rss" style=" color: #3366aa; font-weight: 500 !important; ">React Native 0.84</a> – Hermes V1 is now the default JS engine on iOS and Android, iOS ships with precompiled binaries, and React 19.2.3.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180795/rss" style=" color: #3366aa; font-weight: 500 !important; ">Node.js 25.6.1 (Current)</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/180796/rss" style=" color: #3366aa; font-weight: 500 !important; ">Node.js 24.13.1 (LTS)</a></p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180797/rss" style=" color: #3366aa; font-weight: 500 !important; ">sql.js v1.14.0</a> – SQLite compiled to JavaScript.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📖  Articles and Videos</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/180798/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/b4fz0lk01ql1hz0cjaj5.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180798/rss" title="aziis98.com" style=" color: #3366aa; font-size: 1.05em;">Experiments with CodeMirror</a></span> — <a href="proxy.php?url=https://javascriptweekly.com/link/180799/rss" style=" color: #3366aa; ">CodeMirror</a> is one of the most robust code editor components out there <em>(we’ve just used it while rebuilding our newsletter editor!)</em> and it’s very <em>extensible</em> too, as seen in this walkthrough of building a VSCode-like ‘change review’ feature for it.</p> <p>Antonio De Lucreziis </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180800/rss" title="nodejsdesignpatterns.com" style=" color: #3366aa; font-size: 1.05em;">How to Make an HTTP Request in Node.js</a></span> — A comprehensive guide to using <code>fetch</code> in production, tackling timeouts, streaming requests and responses, retries, concurrency, mocking, and more. Most of this is useful in the broader JavaScript context.</p> <p>Luciano Mammino </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180801/rss" title="www.tigerdata.com" style=" color: #3366aa; font-size: 1.05em;">One Database for Transactions and Analytics. No Pipelines</a></span> — TimescaleDB extends Postgres so analytics runs on live data—no sync lag, no drift, no second system. <a href="proxy.php?url=https://javascriptweekly.com/link/180801/rss" style=" color: #3366aa; ">Try free</a>.</p> <p>Tiger Data (creators of TimescaleDB) <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180802/rss" title="rednegra.net" style=" color: #3366aa; font-size: 1.05em;">Implementing Virtual Scrolling at Billion-Row Scale</a></span> — A walkthrough of tackling the numerous challenges involved in building a table component (<a href="proxy.php?url=https://javascriptweekly.com/link/180803/rss" style=" color: #3366aa; ">HighTable</a>) that handles billions of rows.</p> <p>Sylvain Lesage </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180804/rss" title="sgom.es" style=" color: #3366aa; font-size: 1.05em;">JS-Heavy Approaches Aren't Compatible with Long-Term Performance Goals</a></span> — A web performance engineer at Automattic makes the case against JS-heavy architectures and in support of a more server-centric approach.</p> <p>Sérgio Gomes </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/180805/rss" style=" color: #3366aa; font-weight: 500 !important; ">Fun with TypeScript Generics</a> – Not your typical entry-level tutorial but a dive into a niche use case. <cite>Adam Rackis</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/180806/rss" style=" color: #3366aa; font-weight: 500 !important; ">Building Bulletproof React Components</a> – Elegant, no-nonsense tips from the co-creator of <a href="proxy.php?url=https://javascriptweekly.com/link/180807/rss" style=" color: #3366aa; font-weight: 500 !important; ">SWR</a>. <cite>Shu Ding</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/180808/rss" style=" color: #3366aa; font-weight: 500 !important; ">How Rolldown Works: High-Performance Code Splitting with Bitset Logic</a> <cite>Atriiy</cite></p> <p>📄 <a href="proxy.php?url=https://javascriptweekly.com/link/180809/rss" style=" color: #3366aa; font-weight: 500 !important; ">Angular Bindings: What Are They and How Do I Use Them?</a> <cite>Bo French</cite></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>🛠 Code &amp; Tools</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180810/rss" title="blackboard.sh" style=" color: #3366aa; font-size: 1.05em;">Electrobun v1: A Bun-Based Desktop App Approach</a></span> — An introduction to a cross-platform runtime for JS/TS desktop apps. It uses the OS’s default web renderer (like <a href="proxy.php?url=https://javascriptweekly.com/link/180811/rss" style=" color: #3366aa; ">Neutralinojs</a>) with <a href="proxy.php?url=https://javascriptweekly.com/link/180812/rss" style=" color: #3366aa; ">Bun</a> as the engine and bundler behind the scenes. The resulting bundles are as small as 12MB. (<a href="proxy.php?url=https://javascriptweekly.com/link/180837/rss" style=" color: #3366aa; ">Homepage</a> and <a href="proxy.php?url=https://javascriptweekly.com/link/180838/rss" style=" color: #3366aa; ">GitHub repo.</a>)</p> <p>Blackboard </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"><p>💡 Electrobun's creator <a href="proxy.php?url=https://javascriptweekly.com/link/180813/rss" style=" color: #3366aa; font-weight: 600;">▶️ shows it off in this 4 minute video.</a></p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180814/rss" title="console-ninja.com" style=" color: #3366aa; font-size: 1.05em;">Console Ninja: Inline Logs &amp; Smarter Debugging</a></span> — See console output, runtime data, and errors next to your code, shared with your AI. Rethought, redesigned, and rebuilt in v2 for faster JavaScript debugging workflows.</p> <p>Wallaby Team <span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em; color: #993 !important; padding-top: 1px; padding-right: 4px; padding-left: 4px; ">sponsor</span></p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180815/rss" title="github.com" style=" color: #3366aa; font-size: 1.05em;">fetch-network-simulator: Intercept <code>fetch</code> to Simulate Poor Network Conditions</a></span> — The heart of this is a library that intercepts <code>fetch</code> and applies rules to do things like drop random requests, delay them, or slow them down, so you can see how resilient your app is.</p> <p>Karn Pratap Singh </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180818/rss" title="adesignl.github.io" style=" color: #3366aa; font-size: 1.05em;">Peek: A Lightweight Library for Smart Page Header Behavior</a></span> — You can see it in action on the page. It’s “smart” in that it will differentiate between small insignificant scrolls and intentional ones. You can customize the thresholds and delays and it works with any framework. <a href="proxy.php?url=https://javascriptweekly.com/link/180819/rss" style=" color: #3366aa; ">Repo here</a>.</p> <p>Chad Pierce </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><span>🏎️</span> <a href="proxy.php?url=https://javascriptweekly.com/link/180816/rss" title="rari.build" style=" color: #3366aa; font-size: 1.05em;">Rari: Runtime-Accelerated Rendering Infrastructure</a></span> — A React Server Components framework but with a Rust-powered server runtime, aiming for higher throughput and lower latency. The <a href="proxy.php?url=https://javascriptweekly.com/link/180817/rss" style=" color: #3366aa; ">getting started guide</a> will help you get the idea.</p> <p>Ryan Skinner </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p><span style="font-weight: 600; font-size: 1.1em; color: #000;"><a href="proxy.php?url=https://javascriptweekly.com/link/180820/rss" title="suhaotian.github.io" style=" color: #3366aa; font-size: 1.05em;">Broad Infinite List: A Bidirectional Infinite List for React and Vue</a></span> — Smoothly stream logs, feed updates, or chat history in both directions without layout shifts.</p> <p>suhaotian </p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p>📊 <a href="proxy.php?url=https://javascriptweekly.com/link/180821/rss" style=" color: #3366aa; font-weight: 500 !important; ">Perspective 4.2</a> – Interactive analytics and data viz component for large/streaming datasets.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180822/rss" style=" color: #3366aa; font-weight: 500 !important; ">Dockview 5.0</a> – Zero dependency layout manager supporting tabs, groups, grids, and split views.</p> </li> <li> <p>♟️ <a href="proxy.php?url=https://javascriptweekly.com/link/180823/rss" style=" color: #3366aa; font-weight: 500 !important; ">Stockfish.js 18</a> – A WASM port of the Stockfish chess engine you can use from JavaScript.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180824/rss" style=" color: #3366aa; font-weight: 500 !important; ">Ohm 17.5</a> – Parsing toolkit for building parsers, interpreters, etc.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 0px; padding-left: 0px;"> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>📰 Classifieds</p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <p>🔥<a href="proxy.php?url=https://javascriptweekly.com/link/180825/rss" style=" color: #3366aa; font-weight: 500 !important; ">JSNation 2026 lineup:</a> Matt Pocock, Luca Mezzalira &amp; more speakers revealed! <a href="proxy.php?url=https://javascriptweekly.com/link/180825/rss" style=" color: #3366aa; font-weight: 500 !important; ">Let’s talk modern web dev in beautiful Amsterdam this June</a>.</p> <p>📸 Add robust 1D/2D barcode scanning to your web app with <a href="proxy.php?url=https://javascriptweekly.com/link/180826/rss" style=" color: #3366aa; font-weight: 500 !important; ">STRICH</a>. Easy integration, simple pricing. <a href="proxy.php?url=https://javascriptweekly.com/link/180826/rss" style=" color: #3366aa; font-weight: 500 !important; ">Free trial and demo app available</a>.</p> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0; padding-right: 0; padding-left: 0;"><p>📢  Elsewhere in the ecosystem</p></td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "> <a href="proxy.php?url=https://javascriptweekly.com/link/180827/rss" style=" color: #3366aa;"><img src="proxy.php?url=https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ukdmw6smabliypinu2bq.jpg" width="640" style=" line-height: 100%; "></a> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; padding-top: 0px; padding-right: 15px; padding-left: 15px;"> <ul> <li> <p>🎨 Three years ago we linked to <a href="proxy.php?url=https://javascriptweekly.com/link/180827/rss" style=" color: #3366aa; font-weight: 500 !important; ">DPaint.JS</a>, a web based image editor modeled after the legendary 1980s Amiga and PC graphics editor <em>Deluxe Paint</em>. Many side projects like this fizzle out, but not DPaint! <a href="proxy.php?url=https://javascriptweekly.com/link/180828/rss" style=" color: #3366aa; font-weight: 500 !important; ">v0.2.0 has been released</a> after two years with support for animations, pen support, texture brushes, and more.</p> </li> <li> <p><a href="proxy.php?url=https://javascriptweekly.com/link/180829/rss" style=" color: #3366aa; font-weight: 500 !important; ">almostnode</a> is an experimental project that brings a Node.js runtime environment into the browser. The demo on the homepage is neat.</p> </li> <li> <p>📊 Data from over 100,000 sites was boiled down into <a href="proxy.php?url=https://javascriptweekly.com/link/180830/rss" style=" color: #3366aa; font-weight: 500 !important; ">this useful report on modern CSS usage.</a> The median number of CSS rules per site was 2,802, with one page somehow using 210,695 rules!</p> </li> <li> <p>🕹️ Not content to just <a href="proxy.php?url=https://javascriptweekly.com/link/180831/rss" style=" color: #3366aa; font-weight: 500 !important; ">port Quake to run in the browser</a>, the creator of Three.js has now <a href="proxy.php?url=https://javascriptweekly.com/link/180832/rss" style=" color: #3366aa; font-weight: 500 !important; ">attempted a <em>Descent</em> port too</a> (<a href="proxy.php?url=https://javascriptweekly.com/link/180833/rss" style=" color: #3366aa; font-weight: 500 !important; ">source</a>).</p> </li> <li> <p>🤖 Can you <a href="proxy.php?url=https://javascriptweekly.com/link/180834/rss" style=" color: #3366aa; font-weight: 500 !important; ">recreate something like SQLite with a swarm of agents?</a> Kian Kyars had a try, as part of an agent coordination experiment.</p> </li> <li> <p>Cloudflare is rolling out <a href="proxy.php?url=https://javascriptweekly.com/link/180835/rss" style=" color: #3366aa; font-weight: 500 !important; ">a feature to allow agents to fetch Markdown directly</a> from Cloudflare-powered sites.</p> </li> </ul> </td></tr></table> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr><td style=" font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.48em; "></td></tr></table> </div> </td></tr> </table> <img src="proxy.php?url=https://javascriptweekly.com/open/773/rss" width="1" height="1" /> Tue, 17 Feb 2026 00:00:00 +0000 https://javascriptweekly.com/issues/773