Sébastien Rigaux

Tech watch

← All links

Next.js

React applications with Next.js: routing, server rendering, caching and deployment.

A white card on a pale blue background displays “Fixing a Hydration Mismatch Error and UI Flicker in React” and the label “Blog”.

In Next.js, a localStorage value can make server-rendered HTML differ from the first client render. The article compares the trade-offs: waiting until mount avoids the error but leaves the real content out of the SSR HTML; using the same initial value for both renders preserves that content, though a later update can cause flicker.

To synchronize a sidebar without that flash, an inline script applies its saved state to the DOM before hydration and passes it to React, which uses the same classes. The article also distinguishes an isolated theme control from a mobile backdrop handled with CSS.

Giorgi MoniavaFound via React Digest

Black graphic with the text “Ship less JavaScript in Next.js with your AI agent” and the Next.js logo.

Next.js 16.4 includes an AI agent skill that analyzes Turbopack’s module and chunk graph to find imports that add to shipped JavaScript. It can, for example, spot when a static import elsewhere in the bundle prevents a component from staying deferred, then suggest changes for review before applying them.

The analyzer also compares snapshots and filters code loaded on the initial render. Vercel reports nearly two megabytes of compressed JavaScript saved across v0 and vercel.com; the fixes were checked on preview deployments. The tool requires Turbopack, the default bundler since Next.js 16.

Will Binns-SmithFound via This week in React

Visual for the Vinext 1.4 post, showing its title, a summary of the changes, and the October 28, 2026 date.

Vinext 1.4 reduces work across several rendering stages: App Router layouts run once per request, prefetching dynamic routes no longer renders the entire page, and the chunks needed for hydration can compile in the background in recent Chrome. On the Hacker News benchmark, the author reports 31.1 ms of CPU per request, versus 54.4 ms in 1.3 and 33.7 ms for Next.js.

The release also keeps cached HTML and RSC payload generation in sync. Results still depend on the workload: on a content-site prototype, Next.js paints sooner and uses less CPU per request. A TanStack Redact test shows another trade-off: less JavaScript to download, but substantially more expensive hydration on content-heavy pages.

James AndersonFound via This week in React

White banner with the black text “Next Themes” and GitHub and sponsor icons.

next-themes applies the theme as the page loads, respects the system preference, and syncs the choice across tabs. Its ThemeProvider works with both the App Router and pages/, while a hook lets components switch themes or handle multiple variants.

One architectural detail matters: the browser-stored theme is unavailable during server rendering. UI that depends on useTheme should wait until the client component mounts to avoid hydration errors. The library also updates the <html> attribute—suppressHydrationWarning is recommended—and remains independent of the CSS solution in use.

Next.js visual showing the article title about improving navigation in v0.

To reduce loading skeletons in v0, the team combines Next.js Partial Prefetching with cache rules suited to public and personalized data. Playwright instant() tests check that priority content is ready at click time, and remain in the codebase as CI regression checks.

Prefetching also responds to user intent: in large grids, details load on hover, focus, or touch rather than for every visible card. That adjustment followed a 2.9× increase in prefetch requests. The overall comparison reports lower daily costs, while cautioning that the change cannot be attributed to this refactor alone.

Aurora Scharff

Dark Vercel Shop banner reading “Production-ready Shopify storefront on Next.js” beside a line drawing of a shoe.

Vercel Shop pairs a Next.js storefront with Shopify, which remains responsible for the catalog, payments, and checkout. Cache Components serve product data quickly, then stream personalized content; meanwhile, the cart updates before the server responds through an optimistic UI.

The template adds agent-facing options: an opt-in shopping assistant, skills for extending the store, and Markdown served through the Accept header. It offers a concrete starting point for these flows while keeping Shopify as the commerce engine.

Screenshot of the vinext 1.1.0 release page on GitHub

vinext 1.1.0, the Vite plugin reimplementing the Next.js API, brings many behaviors in line with Next.js, especially for the App Router (redirect handling, metadata, special errors) and cache management. This release introduces stale-while-revalidate for use cache, serving stale entries while regenerating them in the background, and fixes several cache and server-side rendering inconsistencies. A milestone for those seeking a deploy-anywhere alternative to Next.js.

github-actions

Next.js 16.4 announcement illustration with Next.js logo on dark background

Next.js 16.4 makes Cache Components the recommended approach, now enabled by default for new projects created with create-next-app. This model lets you declare cache behavior at the component level, with APIs to control static or dynamic rendering and fine-tune prefetching. The release also brings agent tooling for migration, Turbopack optimizations (cache size, HMR, smaller bundles), support for React 19.3, and several experimental features for build and development.

Next.js Team

Vinext 1.0 announcement illustration from Cloudflare Blog

Cloudflare releases Vinext 1.0, a Vite-based reimplementation of Next.js that claims over 99% compatibility with the official test suite (excluding Cache Components). Vinext supports both App and Pages Router, offers a two-command migration path, and introduces cache warming handled on the Cloudflare network to optimize page pre-generation. The project relies on extensive automation to track Next.js changes and maintain compatibility, while making distinct choices for ISR and cache management.

James Anderson and Matt “TK” Taylor