Next.js

Experimental Gestures and Foundation Building

Today brings exciting experimental features with gesture-driven navigation support in the App Router, plus major infrastructure improvements including enhanced Turbopack build filtering and React upgrades. The team also focused heavily on developer experience with better debugging tools and test reliability improvements.

Duration: PT4M9S

https://podlog.io/listen/next-js-36fde2ae/episode/experimental-gestures-and-foundation-building-43549943

Transcript

Hey there, developers! Welcome back to another episode of the Next.js podcast. I'm your host, and wow, what a day January 20th has been for the Next.js codebase! We've got some genuinely exciting experimental features landing alongside some really solid foundation work that's going to make your development experience so much better.

Let's dive right into the big news - Andrew Clark just landed something pretty special with experimental gesture-driven navigation support in the App Router. This adds a new `experimental_gesturePush` method that's gated behind the `experimental.gestureTransition` config flag. Now, before you get too excited, Andrew's been crystal clear that this isn't ready for production yet - it's a proof-of-concept to test how Next.js and React's Gesture Transitions experiment work together. But if you're into building demos or exploring the cutting edge of web interactions, this is going to be fascinating to play with. It works by dispatching updates through React's useOptimistic hook, essentially creating a fork of the router state until your gesture completes.

Speaking of React, we've had not one but two React upgrades in the past couple of days, bringing us right up to the latest experimental builds. It's always exciting to see how tightly integrated the Next.js team stays with React's development - you're literally getting access to the future of React as it's being built.

Now, let's talk about some developer experience wins that are going to make your life easier. Hendrik Liebau has been absolutely crushing it with Turbopack improvements. The `--debug-build-paths` flag now properly filters routes in Turbopack builds, which means when you're debugging specific routes in large apps, you're only building what you actually need. This is going to save you so much time! Plus, there's new negation pattern support, so you can exclude specific paths with patterns like `!app/admin/**`. It's these kinds of thoughtful developer experience improvements that really show how much the team cares about your day-to-day workflow.

I also love seeing the continuous improvements to caching and performance. There's a fix for rewritten pathnames with implicit cache tags, ensuring that `revalidatePath` works correctly when you're using rewrites. These are the kinds of edge cases that can drive you crazy when they don't work right, so it's great to see them getting attention.

The tooling improvements don't stop there - Sebastian added `--inspect` support to `next start`, which is going to make debugging production builds so much more straightforward. No more wrestling with `NODE_OPTIONS` in your package.json scripts!

And can we take a moment to appreciate the community contributions? Simeon Griggs completely modernized the with-mysql example, migrating it from Pages Router to App Router, updating to React 19, Tailwind 4, and Prisma 7. That's exactly the kind of work that helps everyone learn and adopt best practices. These examples are often the first thing people look at when learning Next.js, so keeping them current and showing modern patterns is incredibly valuable.

There's been a ton of behind-the-scenes work too - better CI workflows, test improvements, and infrastructure enhancements. The team's commitment to test reliability and developer tooling really shines through in updates like these.

**Today's Focus**: If you're feeling experimental, definitely check out the gesture transitions feature - even if it's just for learning and demos. For everyone else, the Turbopack build filtering improvements are probably the most immediately useful change. Try out the `--debug-build-paths` flag on your next debugging session, especially if you're working with a larger app.

Also, if you're maintaining any examples or starter projects, take inspiration from Simeon's work on the MySQL example and consider updating your dependencies and patterns to the latest standards.

That's a wrap for today's episode! The Next.js ecosystem continues to evolve at an incredible pace, with both cutting-edge experiments and solid foundational improvements. Keep building amazing things, and we'll catch you tomorrow with more updates from the world of Next.js. Until then, happy coding!