22 Sep 2026

feedJavaScript Weekly

JavaScript desktop apps in under 10MB

#​803 - September 22, 2026

Read on the Web

JavaScript Weekly

tinyjs: Build JavaScript Desktop Apps in <10MB - I built an app with this and was impressed. You get a txiki.js-powered backend with full system access (including FFI!), native webview rendering, and tiny macOS, Linux, and Windows builds. It even makes it easy to sign/notarize the final app.

Tarwin Stroh-Spijer

There are lots of great options in this space though:

  • Electrobun offers richer multi-window and GPU features, at the cost of a larger TypeScript runtime - though it can instead use Zig, Rust, Go, or Odin for a tiny native main process.

  • Perry is a TypeScript to native AOT compiler whose primary UI model renders AppKit, Win32 and GTK4 widgets for a more conventionally native feel.

  • Electron and the experimental Deno Desktop are powerful, but their executables typically run several times larger.

  • Neutralinojs apps can be even smaller than tinyjs's, but you lose the general-purpose JavaScript privileged backend by design.

Full-Text Search in Drizzle Without a Second System - Try the official ParadeDB integration for Drizzle. Search your live Postgres tables. No ETL, no Elasticsearch. ParadeDB cloud coming soon.

ParadeDB sponsor

Persistent Databases in the Browser with DuckDB-Wasm and OPFS - A walkthrough of running DuckDB in the browser with a database file that survives reloads using the Origin Private File System now supported by all major browsers.

Piovesan and Wielenga (DuckDB)

How Linear Reworked Its CI for 4x the Tests - Eager agents grew Linear's test suite, and its CI costs with it! They share some remedies: rewriting type-aware ESLint rules as plain AST checks cut lint time 55% and eased a move to Oxlint, while selectively turning off Vitest's isolation saved a further 17% a month.

Mufeez Amjad (Linear)

IN BRIEF:

RELEASES:

πŸ“– Articles and Videos

An Undercover Analyst Infiltrated the Gang Behind 'Mini Shai-Hulud' - Bad news for the group behind this spring's cascading supply chain attacks… Google had a mole in their group chat! WIRED explains how the group was monitored and disrupted, leading to two recent arrests.

Andy Greenberg (WIRED)

The V8 Runtime Undermined My Constant-Time JavaScript Library - A look at how even branchless JavaScript can leak secrets through CPU cache behavior, due to quirks in how V8 handles booleans and -0.

Soatok Dreamseeker

Your UI Isn't Slow. It's Waiting on the Data - TimescaleDB extends Postgres so the data behind your UI loads fast as it grows. Get $1000 credit to start.

Tiger Data (creators of TimescaleDB) sponsor

Do Frameworks Matter Anymore? - If you're using AI, you're either using a framework or your agent is building an ad-hoc one on the fly. A Remix team member argues that's a good reason to want frameworks, and better ones, too.

Brooks Lybrand

πŸ“„ We Are All Product Engineers Now - Laurie argues that understanding what customers need becomes a core developer skill. Laurie Voss

πŸ“Ί Is AI Changing How JavaScript Itself Gets Designed? - A 2-minute take from TC39 delegate Michael Ficarra. JetBrains

πŸ“„ Solid 2.0: It's the Little Things - Six touches that change how SolidJS 2.0 feels. Brenley Dueck

πŸ“„ How Notion Handles Concurrent Editing with CRDTs Nehmzow and Guo (Notion)

πŸ›  Code & Tools

Plotly.js 4: A Big Update for the Popular Charting Library - Now ships its own TypeScript types, adds 'quiver' plots (above) for drawing vector fields (with many awesome examples in the post), accepts CSS Color 4 color strings, and removes Mapbox GL in favor of MapLibre (no token needed!)

Chris Parmer

πŸ€– Transformers.js v4.3: Run AI Models in the Browser - Adds support for structured output (e.g. JSON), using WebGPU on Safari 26+, and DeepSeek v4. The docs have had an overhaul and there's now an agent skill you can use.

Hugging Face

πŸ’‘ Hugging Face also released a collection of 207 Apache-2.0 WebGPU kernels - matmul, attention and quantization ops for your own runtime.

Still Writing Tests Manually? Meticulous AI Is Here - Flaky tests slowing down dev? Meticulous gives engineers confidence to ship faster by autonomously testing every edge case of your web app.

Meticulous sponsor

@shadcn/lint: An Agent-First Linter for Tailwind - An ESLint/Oxlint plugin to enforce rules like "no raw colors" and "no restyling <Button> from outside" with errors to steer agents back to your variants and tokens.

shadcn

Devframe: A Framework for Building DevTools That Run Anywhere - From the developer behind Vitest and Nuxt DevTools, "a framework for building DevTools, in the same way Nuxt or Next.js provides a framework [for web apps]". Define a tool once and Devframe turns it into a Web Standard request handler you can mount almost anywhere.

Anthony Fu

βœ‰οΈ Mailflare: A Self-Hosted Inbox Built Entirely on Cloudflare - A self-hosted inbox for custom domains built on Cloudflare's Email Routing, Workers, D1 and R2. AGPL 3.0 licensed.

Hieu Nguyen

  • gridstack.js 14.0 - The popular drag-and-drop dashboard layout library adds a list mode that reflows widgets like a reorderable list. (Demos.)

  • πŸ–ΌοΈ image-dimensions 2.6 - Quickly get an image's dimensions by reading the least amount of data.

  • Feedsmith 3.0 - A fast way to parse and generate web feeds, including RSS, Atom, and JSON.

πŸ“° Classifieds

A developer's guide to adding eSignature to your app with an API: How signing workflows and embedded signing work, and the core steps to add signing to your product with Foxit.

🧩 CAPTCHA was built for a different internet. Replace it with invisible bot detection with a few lines of code. Try Fingerprint for free.

Meet chat.agent on Trigger.dev: durable AI agents built with the AI SDK you already use. Long-lived LLM sessions that survive deploys, crashes & refreshes.

πŸ“’ Elsewhere in the ecosystem

22 Sep 2026 12:00am GMT

15 Sep 2026

feedJavaScript Weekly

Functional programming jargon, mapped out

#​802 - September 15, 2026

Read on the Web

JavaScript Weekly

Functional Programming Jargon, Mapped and Explained - Currying, purity, functors, monads…? If FP terms ever go over your head, TC39 delegate Hemanth HM's popular jargon reference is now an explorable map of concepts showing how they relate, each with a simple definition and JavaScript example.

Hemanth HM

Stay Sharp in the Age of AI - Master.dev instructors build at Anthropic, OpenAI, Netflix, Google, and Stripe. Learn from them with hundreds of courses, live workshops, and expanded AI learning paths. New members get $100 off a yearly membership.

Master.dev sponsor

Modern Web Types: TypeScript Support for Newer Web APIs - TypeScript's DOM types only include APIs shipped in multiple browser engines, so things like element-scoped startViewTransition and fetchLater throw up errors. modern-web-types is a drop-in lib.dom replacement that adds missing interfaces/members shipped in any single browser engine.

Philip Walton (Google)

React 19.3 Released - A significant minor release making view transitions and Fragment Refs stable, adding Trusted Types support, and more. We covered it in more depth in last week's React Status.

The React Team

IN BRIEF:

RELEASES:

πŸ“– Articles and Videos

A Design Space Exploration of async/await - A simple async/await example produces different results in JavaScript, Rust, Python and Swift. Test your mental model with a quiz, then learn about the design choices behind the differences.

Gavin Gray

Native is Now the Future of Mobile at Shopify - Shopify is rewriting its React Native mobile apps in Swift/Kotlin. The main argument is coding agents have cut the cost of writing everything twice, while the upsides of native remain.

Mustafa Ali (Shopify)

Workshop: From an Error to the Logs That Explain It - Reading logs next to traces and errors, holding context across services, and cutting the noise.

Sentry sponsor

A Deep Dive into StyleX - A hands-on tour of Meta's StyleX, which turns JavaScript style objects into plain atomic CSS at build time, and why it can be a good fit for coding agents in particular.

Flavio Copes

πŸ“„ 'Nobody Pays for Open Source: We Can Force Them To' - Laurie Voss ran npm for five years and thinks registries are an untapped lever for funding maintainers. Laurie Voss

πŸ“„ Anecdotally, Programmers Dislike reduce - map and filter sail through code review, but reduce draws complaints. Evan has a few theories why. Evan Hahn

πŸ›  Code & Tools

SnapDOM 3.0: Turn DOM Elements Into Images, Canvas and More - Zero-dependency html2canvas alternative with support for pseudo-elements and Shadow DOM. v3.0 adds 'incremental recapture' for faster repeat captures, automatic web font embedding, and fromString() for turning raw HTML markup into images.

Zumerlab

Your App Didn't Get Slower. Your Data Got Bigger - TimescaleDB extends Postgres so queries stay fast at scale, even as your data grows. Get $1000 credit to start.

Tiger Data (creators of TimescaleDB) sponsor

Fallow: Codebase Intelligence for TypeScript and JavaScript - A fast, zero-config Rust binary that finds dead code, duplication, circular dependencies and complexity hotspots in JS/TS projects. It's also pitched as a deterministic check for AI agent coding loops. GitHub repo.

Bart Waardenburg

🎨 category-colors: Generate 'Least Wrong' Color Palettes for Charts - Matt devised this algorithm for picking categorical chart colors in 2022 while design director at Stripe. It's now available as an npm package, and you can try it out on the Web here.

Matt StrΓΆm-Awn

  • React DevTools 8.0 (Chrome Web Store) - The Suspense tab is now on by default, the Timeline profiler is gone (use your browser's Performance panel instead), and inspecting a DOM node now shows its matching React component.

  • Zod 4.6 - Adds .validate(), a boolean check that skips building errors and is up to 35x faster than .safeParse().success on invalid input with compiled schemas.

  • Javet 6.0 - Embed Node.js v26's runtime in the JVM for full interop with Java.

  • parse-xml 5.0 - The fast, compliant XML parser goes ESM-only.

  • πŸ•ΉοΈ n64js 1.0 - A Nintendo 64 emulator in pure JavaScript.

πŸ“° Classifieds

πŸ’» Free live coding workshop, Sept 16. Build signup protection with Fingerprint that catches fake signups, no matter how they cover their tracks.

Flaky tests slowing down dev? Meticulous gives engineers confidence to ship faster by autonomously testing every edge case of your web app.

⚑ Zuplo puts every API, AI, and MCP request behind one gateway. Route traffic, guard your MCP servers, and cap your AI costs. Try it free.

πŸ“’ Elsewhere in the ecosystem

15 Sep 2026 12:00am GMT

08 Sep 2026

feedJavaScript Weekly

When 8 chunks weigh more than 355

#​801 - September 8, 2026

Read on the Web

JavaScript Weekly

How Turbopack Chunks Your JavaScript - Starting from the Network tab and working up, a look at chunking strategy and the tradeoffs bundlers make between fewer requests and less code (e.g. 8 chunks can weigh more than 355 do), backed by numbers from bundling the official Next.js site itself.

Sam Poder

Catch Runtime Bugs Before Your JS PR Merges - Greptile now runs your code to find bugs. T-Rex runs your PR branch in a sandbox, uses browser agents to click through your UI, and attaches screenshots and videos as evidence of the issue directly in the PR.

Greptile sponsor

Vitest 5.0 Focuses on Speed and Test Debugging - A major release for the Vite-native test runner, with a benchmark repo showing up to 53% faster runs on dependency-heavy apps. The new Trace View replays Browser Mode tests step by step, and vitest doctor recommends settings to make your suite run faster.

Vitest Team

How Safari Fixed Top-Level await - Safari's module loader was originally built on an abandoned spec proposal and adding top-level await caused years of "cannot access before initialization" errors. Safari 27 brings full spec compliance for it, but it took a ground-up rewrite and this post explains the complexity.

Kai Tamkun (WebKit)

IN BRIEF:

RELEASES:

πŸ“– Articles and Videos

β–Ά The Story of VS Code - An official movie-length documentary on Visual Studio Code's journey from a Swiss skunkworks to now. Its founding engineers cover the decisions made in areas like Electron, LSP, and the extension API, plus candid talk about the various forks now springing up.

Microsoft and Stefan Kingham

πŸ˜… We also learn that at the 2015 launch they drank a beer per 100 Hacker News upvotes… and had to stop at 1,400 (votes, not beers!)

Half Past Fetch: What await fetch() Waits For - Did you know await fetch(url) waits for the headers, not the full body? Gabor digs into some surprising consequences of that for connections, clone(), aborts, and timeouts.

GΓ‘bor KoΓ³s

Your AI Writes Tests That Pass but Prove Nothing. Fix It - Wallaby CLI makes test generation 10x smarter with live coverage and runtime data, using 3x fewer tokens. One skill to install.

Wallaby Team sponsor

10 Anti-'Slop' Moves for Frontend Projects - A walkthrough of automated checks that cut how much code you have to review, covering OpenAPI codegen, layer boundaries, mutation testing, and using CI to make it all stick.

Yuri Mikhin (Evil Martians)

The Browser's Main Thread is Expensive - A thorough look, complete with demos, at spending your main thread time well, including splitting, batching, prioritizing, and deferring tasks, then getting work off it entirely.

Lee Sun-Hyoup

πŸ“„ Why I Ported Moonshine to JavaScript - Pete's low-latency speech to text runtime now runs in the browser to avoid round trips to a server. Pete Warden

πŸ“Ί How Can Someone Actually Change JavaScript? - A 2-minute explainer from a TC39 delegate. Mikhail Barash

πŸ›  Code & Tools

Dropzone.js 6.x: The Drag and Drop Uploader Returns - A major update for the library that handles the browser side of drag and drop uploading. After a 5 year(!) beta, v6.0, 6.1, and 6.2 landed over two days, bringing no dependencies, smaller bundles, and fixes for chunked uploads that could corrupt files.

Mat Simon

Rslib 1.0: A Build Tool for Shipping JavaScript Libraries - From the Rspack team, a unified build pipeline that handles the irritating parts of publishing packages, like getting ESM and CJS working side by side, Module Federation output, and component CSS across React, Vue, Svelte and Solid.

Chenwei Dai, Elecmonkey, et al.

Balance build time with your time - Our technologists do meaningful work, and we give them the support to have a meaningful life, too.

Fidelity Careers sponsor

vgpu: Render WebGPU Shaders in the Browser or Node.js - Provides a way to use the same shader in the browser or render headlessly with Node (to a high-resolution PNG or MP4 video). WGSL modules import and export like TypeScript does.

Vercel

SimpleWebAuthn 14.0: Now with Post-Quantum Passkeys - The passkeys library now verifies post-quantum ML-DSA passkeys and, on Node 24.7 and up, prefers ML-DSA-44 at registration by default.

Matthew Miller

  • ESLint Config Inspector 3.4 - Adds timing analysis making it easier to identify the rules slowing down your lint runs.

  • GPUIX 0.7 - Build native GPU-accelerated desktop apps with React and TypeScript atop the framework used by Zed.

  • memlab 2.0.5 - Meta's framework for finding memory leaks in both browser and Node.js JavaScript apps.

  • 🎡 Astro LilyPond - Build-time rendering of text to musical notation for Astro.

  • πŸ“Š vue-echarts 8.3 - Vue.js component for Apache ECharts.

πŸ“° Classifieds

πŸ’» Join Fingerprint on Sept 16. Learn how to stop fake signups with Device Intelligence, and build protection that works, for free.

Flaky tests slowing down dev? Meticulous gives engineers confidence to ship faster by autonomously testing every edge case of your web app.

Charts crawling as your data grows? TimescaleDB extends Postgres to stay fast at scale, straight from live data. Get $1000 credit.

πŸ“’ Elsewhere in the ecosystem

08 Sep 2026 12:00am GMT

18 Jan 2026

feedOfficial jQuery Blog

jQuery 4.0.0

On January 14, 2006, John Resig introduced a JavaScript library called jQuery at BarCamp in New York City. Now, 20 years later, the jQuery team is happy to announce the final release of jQuery 4.0.0. After a long development cycle and several pre-releases, jQuery 4.0.0 brings many improvements and modernizations. It is the first major … Continue reading β†’

18 Jan 2026 12:29am GMT

11 Aug 2025

feedOfficial jQuery Blog

jQuery 4.0.0 Release Candidate 1

It's here! Almost. jQuery 4.0.0-rc.1 is now available. It's our way of saying, "we think this is ready; now poke it with many sticks". If nothing is found that requires a second release candidate, jQuery 4.0.0 final will follow. Please try out this release and let us know if you encounter any issues. A 4.0 … Continue reading β†’

11 Aug 2025 5:35pm GMT

17 Jul 2024

feedOfficial jQuery Blog

Second Beta of jQuery 4.0.0

Last February, we released the first beta of jQuery 4.0.0. We're now ready to release a second, and we expect a release candidate to come soonβ„’. This release comes with a major rewrite to jQuery's testing infrastructure, which removed all deprecated or under-supported dependencies. But the main change that warranted a second beta was a … Continue reading β†’

17 Jul 2024 2:03pm GMT