The September Next.js security release is now available.
It addresses seven vulnerabilities, including one high-severity issue. Upgrade now:
▲ ~/ npm install next@16.3.8
▲ ~/ npm install next@15.5.27
nextjs.org/blog/septem...
React 19.3 is now available!
This release makes View Transitions and Fragment Refs stable, and adds browser(), Trusted Types support, and Context in Server Components.
react.dev/blog/2026/09...
💯
> Blaming #GDPR for the cookie banner is like blaming the health inspector for the roaches. The banner is deliberate vandalism, a dark pattern engineered to exhaust you before you can learn anything about the #surveillance apparatus humming behind the "OK."
matduggan.com/you-know-gdp...#privacy
The August Next.js security release is now available one day ahead of schedule to include a fix for a newly disclosed vulnerability in an upstream dependency.
▲ ~/ npm install next@16.3.3
▲ ~/ npm install next@15.5.24
nextjs.org/blog/august...
Next.js 16.3 is now available!
• Up to 90% less memory in dev
• Faster builds, type checking, and rendering
• Better tooling for AI agents
• Custom error boundaries
• Instant Navigations for SPA-like responsiveness
nextjs.org/blog/next-16-3
Here's what's new ↓
Following our move to scheduled, pre-announced security updates, the July release is out.
This release addresses several security issues in Next.js 16 and 15. Update to 16.2.11 (Active LTS) or 15.5.21 (Maintenance LTS) now.
nextjs.org/blog/july-2...x.com/nextjs/stat...
Possibly one of the most impressive Safari bugs I’ve run into lately:
Going back (with a swipe) in *any* React app that uses Navigation API freezes the page for three seconds.
What’s fun is the main thread is not frozen, only the rendered page is.
I've been working on the React Suspense docs: there's now a full list of what activates a Suspense boundary, with a live example for each trigger.
Thanks @danabra.mov and Sebbie Silbermann for reviews!
react.dev/reference/re...
Demos below ↓
it is incredibly stupid to generate blog posts with llms
anyone can output the same thing with the same prompts. If they’re interested in reading that, let them write the prompts.
if it’s a writing skill issue on your end… failing at writing is how you get better at writing.
Cache Components surface errors as you build when something dynamic would block your shell, nudging you toward a more performant app. The shell loads instantly while dynamic parts stream, and on this demo every route lands in the green.
We're working hard to make them easier to adopt!
My React Summit talk is up: What RSCs Can Do in Next.js Today. To show it, I built a music player, open source and deployed on an early preview of Next.js 16.3.
🎵 next-beats.dev
Watch the talk for the full walkthrough, and check the key patterns in code below ↓
gitnation.com/contents/wha...
There are two ways to resolve the cognitive dissonance of being on Twitter while also caring about all the awful shit happening because of Twitter
1. Leave Twitter
2. Stop caring
Profoundly disappointing how many people I like seem to have chosen the latter
I'm going on tour with the Next.js team in June! Coming to Amsterdam and London to share what's new in Next.js 16.3, hang out with the community, and answer your questions.
• June 9: San Francisco: luma.com/vercel-408x
• June 11: Amsterdam: luma.com/34nqdfc3
• June 18: London: luma.com/lfr946sc
I personally would recommend reviewing actions/checkout with a custom ref input instead. actions/checkout is the way to escape trust boundaries. In pull_request_target events that's fork -> upstream. But in workflow_dispatch events actions/checkout allows running in protected GH environments.
most of these github actions driven breaches are because of pull_request_target.
here's some tips of what to look for when reviewing your own workflows.
worth noting - it is safe, and necessary, when used correctly
🧵
If you treat your default branch as something that went through PR review, you better make sure your workflow_dispatch doesn't do a checkout with a custom input.
Next.js is used by millions of developers across every major cloud. Making it work well everywhere is on us.
Here's what we've built with Netlify, Cloudflare, OpenNext, AWS, and Google Cloud, and the commitments we're making.
nextjs.org/nextjs-acro...
The "export defer" TC39 proposal aims to introduce a similar optimization *at the language level*, so that you can rely on it in all the tools and environments that you might run your code with.
Just because you need one thing from a module, you shouldn't pay the cost of all the others!
Why did adding ONE component make your build drastically slower?
The answer is often: Barrel files.
Luckily, you can enable Lazy Barrel Optimization in @vite.dev 8 and @rolldown.rs do bring your build time back to normal.
Want to know more? Check the video & docs
rolldown.rs/in-depth/laz...
Does this diagram help? It uses the React Performance Tracks to explain what React is doing, and what you'll see when you use the tracks:
github.com/reactjs/reac...
From Chrome 145 (on general release next week!), DevTools we will start to show so called "soft" navigations and "Soft LCP" in the Performance Panel traces.
These are for SPAs which don't do a full page load, but instead "fake it" by updating the current page and pushing a new history entry.
1/5 🧵
Just ported my personal site over to @astro.build with a custom @bun.sh adapter I wrote 🚀
👋 I'm currently looking for my next role, so if you're hiring, reach out!
- Astro + Bun for blazing fast SSR
- Supports ISR and SWR
- Hosted behind @cloudflare.socialgithub.com/wyattjoh/ast...
It’s happening. Yarn 6 Preview is here 💫
Yes, we rewrote it in Rust 🦀⚡️
I'm incredibly excited for the future of our beloved package manager. See the benchmarks and plans in our latest post:
Learn how we built Turbopack with incremental computation to scale development and builds to Next.js applications of all sizes.
nextjs.org/blog/turbop...
Your TypeScript year in review
You "silenced" 417 errors with `as any` that turned into runtime errors as soon as the code ran
TypeScript printed 4,693 error messages. 26 of them made sense
You spent 98 minutes waiting for tsc to run. During this time you spent 544 minutes reading social media
We paid $1 million to hackers to harden our firewall defenses.
Today we're telling the story of how we strengthened our WAF, disclosing a runtime mitigation layer for the first time, and how we partnered with
@Hacker0x01 to defend against React2Shell.
vercel.com/blog/our-mi...
Been working on a new microsite to teach Next.js patterns, and I just published a new one:
"Sharing data with Client Components"
See how to use promises to keep your page unblocked so it can be rendered (or prerendered) as early as possible.
Enjoy!
next-16-recipes.vercel.app/sharing-data...
⛩️ Waku v0.27.3 has been released.
- Dependency updates addressing the critical React Server Components security vulnerability
- Various small improvements
All users should update immediately: github.com/wakujs/waku/...
There is critical vulnerability in React Server Components disclosed as CVE-2025-55182 that impacts React 19 and frameworks that use it.
A fix has been published in React versions 19.0.1, 19.1.2, and 19.2.1. We recommend upgrading immediately.
react.dev/blog/2025/12...
fantastic explanation by @storyhb.com, also maybe first example i remember of a feature being more immediately useful (in a sense) self-hosted compared to serverless/vercel
One of the huge perks of working at a software company is, when there's something about the product that bothers you personally, you can get your hands dirty and find out why it's basically impossible to get fixed
TLDR; The PSF has made the decision to put our community and our shared diversity, equity, and inclusion values ahead of seeking $1.5M in new revenue. Please read and share. pyfound.blogspot.com/2025/10/NSF-...
🧵
I don't know how a migration helper from a static json file the new flat config can fail so horribly. Does anybody have a successful migration story for a non-trivial .eslintrc.json to flat config?
React 19.2 is now available!
This release includes Activity, useEffectEvent, React Performance Tracks, partial pre-rendering, and more:
react.dev/blog/2025/10...
styled-components maintenance mode doesn't have to mean panic mode.
Our engineer @codey.bsky.social made performant community forks. Linear's already seeing 40% faster renders with zero code changes.
Not a permanent fix, but it buys you time to migrate properly.
www.sanity.io/blog/cut-sty...