JavaScript Every Month
Web in September 2026
Hello October!
September was the month decision models took over. ChatGPT co‑founder Diogo Almeida released a model with a new architecture. Instead of walls of text, the model could only answer with decisions or choices. You could consider this a restriction than a new feature, but so is Twitter
Caught up in the storm, everyone and their mother has released their own Jev, to list a few: Cloudflare Clef, Perplexity Decisions, OpenAI Decisions, Amazon Strands Decider, Liquid D1, Together Tev1x, Mercury Decide and others who I'm skipping for brevity.
Releases
Browsers
Chrome 153, Chrome 154
- Capability elements:
<camera>and<microphone> - Iterator
join(),includes()method - Extends the overflow property to support scrollable values together with clip
- Chrome prompts users by default when they connect to a site over an insecure (http) connection
Firefox 155, Firefox 156, Firefox 157
Firefox team has been busy 😅
progressCSS function - baseline- Relative alpha colors with
alpha()- baseline font-widthproperty
Safari 27
ariaNotifyAPIrevert-rule,stretchin box sizing,:host:has(),::headingpseduo class<image>values inlight-dark()color-mix()with more than 2 colorssizes="auto"baseline- Customizable
<select> - Neat post about fixing top level await in Safari
React 19.3
- New
<ViewTransitions />component to animate elements as they enter and exit using browser's view transition API - you can now add refs to fragments
- A component can call
use(browser())to opt out of server-side rendering
Angular 22.2
- allow template to access private props
- scope type-checking of keyed defer blocks
- add ErrorBoundary programmatic APIs
Rslib 1.0
- Builds on the Rspack and webpack ecosystems
- supports module federation output
- fast declaration generation using tsgo
Vitest 5
- Performance improvements, proven through benchmarks. Performance hints are pritned by default.
- Build in trace view in browser mod
- Nested projects and config inheritance
- Fake timers now mock the
TemporalAPI alongsideDate
Homebrew 7.0
- Greater concurrency across downloads, preparation and installation maximises performance while coordinating failures and summaries
- Fixed several security advisories
- BrewUI - official interface for homebrew
Vite+ 1.0
- A single command, vp, manages your Node.js runtime, package manager, and frontend toolchain
Github CLI: Media in issues, pull requests, and comments
Take a note of this one if you use GitHub. You can now use the CLI to upload files to Pull requests. Let your agent upload 60fps walkthroughs of your product.
React Router 8.4
- Reduced route component rerenders
- new unstable preload route pattern achieving ~71–88% with 1,000 routes
PandaCSS 2
Rust rewrite with 28x faster static CSS generation.
pnpm 12.4
pnpm can now manage npm, Python and Cargo dependencies in the same workspace.
DevFrame
Antony Fu who wrote and manages so many amazing dev tools for the community has open sourced a framework for building these devtools.
Astro 7.3
- Run multiple preview servers at once
- Cloudflare
finalize()helper for custom fetch handlers
GPU Lexer
A 27kB language agnostic syntax highlighter from Vercel Labs.
Playwright 1.63
Shared test resources can be lock()ed so that tests can still run concurrently.
IDE
- Prompt guide for Opus 5.5 - Getting the most out of Opus 5.5 in Claude and Claude Code
- z.ai's coding harness z-code had a security vulnerability where repostiories where being uploaded to their servers. They have fixed the vulnerability and converted the harness to open source.
- Speaking of open source harnesses, Minimax has open sourced theirs and it fares really well on Frontier code evals.
- Amp is free to use when bringing your own compute and model subscription.
- NVIDIA acquires Hugging Face for $12,930,300,000 (also the 🤗 emoji, hugging face)
- Inference service from the makers of Pi - Radius
- A free year of Kiro IDE offered for students
- Kimi code has a desktop app
- Opencode Go has a new subscription tier for $40
- Opencode has released their v2 version, there's an accompanying blog post explaining how they manage hot reloading and plugins.
- Manus 2 - with their version of GrokBot with Cue
- Muse - Meta's version of GrokBot, now in select markets. Meta has launched a new subscription plan with AI usage named MetaOne
- zg is a semantic rg replacement from Qwen team
In the Spotlight 🔦
Shopify goes back to Native
Shopify argues that, in the age of AI, creating two apps that translate code between codebases is not a big deal. Therefore, you might as well use native apps rather than React Native. They claim native apps can deliver better performance and UI/UX than React Native apps. Shopify also maintains many important React Native libraries. It has renewed its commitment to them, indicating ongoing sponsorship and transferring ownership to open source.
- Announcement - Shopify
- Why has Shopify dropped React Native - Pragmatic Engineer newsletter
- Coinbase is also going fully native
Alongside, an upcoming Expo modules releases makes writing native modules inside React Native apps easier than ever
Cloudflare Birthday Week
Cloudflare blessed us with an absolute run of things for their birthday week. Noting down some relevant ones here:
More than half the traffic reaching sites on Cloudflare is now automated, and AI agents are the fastest-growing part of it
- Cloudflare is a Certificate Authority
- Monetisation Gateway is in closed beta
- cf is cloudflare's cli mirroring everything you can do in API
- Vinext on their first stable version
- An update on Cloudflare's VoidZero acquisition. Vite passes 100m downloads 🎉
Rails conf debacle
DHH got on stage for the Rails World 2026 keynote and said he would rather just write Rust - because it's faster and it's written by Agents, not him. A good start for a Rust conference, but probably not a Rails conference. I personally think he could have just declined speaking at the off site and choosen another stage to make his opinions than Rails world, but outside the stage, I can't really fault the words.
- The End of Hand-Written Code: A Conversation with David Heinemeier Hansson (DHH) on AI, Omarchy and the Future of Programming
- Laravel founder reaches out to help Rails developers land talks at Laracon
Security
- HEIF Heist - Security exploit through native C/C++ parsers used for image parsing.
- Next.js made two security releases in September.
- Mass scanning for exposed Vite ports has been detected
- Google has pulled off a spy thriller move on TeamPCP that has led to two arrests.
Tutorials
How we made claude.ai 3x faster in two weeks - claude.dev
Claude's desktop app is now 3× faster. The blog not only describes the improvements that increased speed, but also explains how they created a benchmark to verify performance, enabling the model and harness to measure it automatically.
Read alongside: Automating eval design and hillclimbing with Claude
Wrong, not broken - AWS
It's not every month that I feature an AWS blog post here. There are situtations where you see your thoughts expressed so well in words and this is one of them. Before Agents, we had code that worked mostly deterministically - if something did not work, it was broken - it was at least broken on one device one network in someone's basement. But if agents are creating interfaces that your user interacts with, there are surely cases where the interface is wrong, but not broken.
How Notion handles concurrent editing with CRDTs
Notion must be the among the people using CRDTs for conflict management at scale after Google and Microsoft. If you need multiple people editing the same document at the same time and preserve some semblance of reality in the final edits - this is the article to read.
How to scale intent, quality, and artistry with Al | Katie Dill (Stripe) - YouTube
Katie Dill, design leader at Stripe, names UI slop as the UI slop problem. She compares it to post war housing boom where every building was forced to look the same despite serving different purposes. She sets up these principles to build software with "soul":
- Define a clear point of view
- Encode standards into system
- Refuse to confuse done with good
- Instead of using AI only for speed, leverage it as a catalyst for experimentation
Detect when elements overlap with CSS - Ahmad Shadeed
Ahmad Shadeed uses a smart scroll animation technique to find if elements are overlaps just using CSS.
How Turbopack chunks your JavaScript - Next.js
The bundler faces a Goldilocks problem: keeping reused chunks on every page duplicates code and inflates file sizes, while optimizing too many chunks into separate files creates excessive network requests. The blog explores how Turbopack solves this issue.
The best dark mode toggle is probably none - Lea Verou
I didn't expect so much discussion about how many toggles a theme selector should have, but here we are. Have you made up your mind? How many options should be given to the user for toggling dark mode?
In short
- jQuery 1.0 celebrated 20 years. Angular 2.0 celebrated 10 years on 15 Sep.
- One of my favourite CSS blogs starting out (one that I have written few articles for) has been quiet for some time. Geoff Graham writes on the backstory
- Shopify acquired TailwindCSS
- Microsoft announced that IE Mode in Edge would be gone by end of 2029.
- A game of corporate round robin happened at Wordpress with Matt Mullenweg mirroring the Sam Altman Saga.
- GitHub migrated from CSS-in-JS to CSS modules.
- Facebook is building a subsea cable to deliver petabit capacity at transoceanic distances, connecting France and the United States over approximately 7,000 km named Petal
- What happens to technical blog posts/courses in a world where AI could creates personalised ones - The asteroid currently hitting frontend web development
- An update on Angular’s TypeScript 7-powered Compiler
- Eric Zakariasson publishes the prompt that they use to optimise the harness at Cursor. Also the detail blog opst on Improved token efficiency
- How Watermarks Track AI Generated Content - Computerphile - YouTube
- Linear blog talks about they reworked their CI to make things faster ⚡
- Frontend for system engineers - I do not suspect that you are a systems engineer reading my newsletter, but fascinating description of concepts.
- Browser main thread is expensive - Interactive take on what happens on the main thread.
In Other News
The mathematics of AI uncertainty - Google Deepmind
Zoubin Ghahramani talks about the importance of uncertainity in intelligence. Why does it look like even the most advanced AI agents would reverse their opinions given enough pushback? Intelligence as a skill depends on understanding probability and decision making.
OpenAI & Navier Stokes Millenium Prize Problem
-
On 8 Sep, OpenAI announced that their models had cracked a millenium prize - the Navier Stokes problem and independently found a solution.
-
Tristan Buckmaster and Levent Alpoge (who works at Anthropic) claimed that they have been working on a specific case of Navier Stokes, Euler problem equation using OpenAI's models. This data might have leaked into their training data set.
-
OpenAI has disputed these claims with statements from Sebastien Bubeck, OpenAI researcher.
-
Navier–Stokes priority controversy - Wikipedia
-
ELI5 what the Navier Stokes problem isand why it is important that we solved it? - Reddit
-
Why Navier-Stokes Pushes Math and Physics to the Edge - Quanta Magazine - YouTube
-
SOLVED: Navier-Stokes cracked by AI - Numberphile - YouTube
Behind Project Suncatcher, our moonshot to put AI in space - Google
Google is attempting to put a TPU data centre in Space with their next project in collaboration with SpaceX. The blog explains the challenges they forecast in Space and overviews on how they are solving them. Fascinating stuff!
iPhone Duo
Apple has entered the foldable market with an expensive phone. Many apps have been adapted to the foldable resolution, but browser usage is still using just 70% of the screen.
Googlebook
Google has released a new range of laptops built by different providers. These run Googlebook OS and mostly bank on the web with Progressive Web Apps. It seems that the app support might be mostly coming from Android and all focus is on Gemini integration.
Yeti 2
Logitech releases a fresh take on the best selling microphone. It comes with an AI denoiser and automatic gain.
AI updates
- Dario Amodei wrote We Must Pace the Frontier and released Fable 5.1, Opus 5.5, Sonnet 5.5.
- Gemini Argon, Gemini 3.8 Flash
- Muse Spark 1.3
- Deepseek 4.1 Flash
- SWE 2 - Free and unlimited across Devin IDEs for a limited time.
- GPT 6 Astra, GPT 6.1 Sol, GPT 6 Luna, ChatGPT Images 2.5. When Astra was released, Artificial Analysis revamped its evals to correctly place the model.
- Grok 4.7
- Minimax 3.1 Flash Preview
- Xiaomi 2.6 Pro & Flash. Xiaomi put out their training metrics on a public dashboard
Looking Ahead
- Remix Jam - Oct 2
- Cloudflare Connect - Oct 19-21
- [CityJS Athens] - Oct 21-23
- React Advanced London - Oct 23 & 26
- GitHub Universe - Oct 28-29