u/floydophone
floydophone
floydophone
I agree that it has gotten more complicated over the years as it has tried to solve increasingly hard problems across a wide variety of environments and use cases. And yes, there have been some decisions in the past that we had to walk back. We are both in agreement, however, that we need the framework to trend towards simplicity and transparency. That's why we've been focused on simplifying the caching model with cache components and making everything dynamic by default. While we still have more work to do, I think framing it as an "architectural disaster" is totally unfair and we're on a great path forward.
floydophone
Yeah definitely. We already know through internal evals that this is one of the biggest things we can do to make agents more effective at building Next apps. We have done some work on this in 16.2 and 16.3 but we are increasing our investment here. It will probably manifest as additional CLIs and skills to make agents more efficient.
floydophone
floydophone
Why doesn't NextJs rank on google? Even if its SSRed, it just doesnt rank even with other similar things. Do you know why?
From David:
You can confirm if there is an issue with your code, or potentially Next, by querying the metadata tags in your production deployment and seeing if what is returned makes sense to you. Same goes for checking your app’s /sitemap , etc. Another test you could try is making an AI agent, query your website, and seeing what it can come up with. The fact is there are many factors that can influence this, and often the best thing to do is to use Google Search Console and seeing metrics from there (or rewriting your metadata to be more keyword friendly)
floydophone
floydophone
Is anyone working on stability of the cacheComponets or this is going to become obsolete? A few version since release and still no way to read dynamic APIs in draftMode for cache components, CMS system are not able to preview draft content until this is done without weird workarounds or duplicate components
From Sam:
Draft mode is fully supported with cache components today so if you're seeing something funny, it's probably a bug. The way draft mode works is that all use cache scopes are ignored and everything runs dynamically as if it weren't cached at all. In earlier versions of Next.js you might still see an error saying the page was accessing uncached data if you ran your app in development and had draft mode enabled but we've since fixed those. You should be able to write a fully cached page, enable draft mode, not see any errors, and see fresh content, all without forking or duplicating your components. Let us know if you're not seeing that behavior on the latest version.
floydophone
floydophone
- When can teams trust Turbopack’s default build cache? 2. Are open Turbopack dynamic-import issues for the Pages Router still a focus? 3. Will hard navigation between Pages and App Routers be solved to improve incremental migration? 4. How is the team supporting and graduating experimental next.config features? 5. Are there plans to support variables in dynamic imports instead of requiring a full path?
From Tim:
- In Next.js 16.3 Turbopack filesystem caching is enabled by default for dev and build. We’ve been dogfooding the build cache for months on Vercel’s own applications.
- If you can share the specific issue you ran into I can forward it to the Turbopack team
- Pages Router and App Router use different versions of React and different runtimes. It doesn’t share code between the two and they’re bundled differently too. It would cause significant issues with existing Pages Router code to allow navigating between them and still needs a full unmount of the page. It would also introduces more surface area for bugs / unexpected behavior.
- It depends heavily on the experimental feature. Some are definitely going to move to stable. Others are real experiments.
- With Turbopack you can already use interpolation. Turbopack also supports
import.meta.globnow. You can’t doimport(${dynamicVariable})though because that would mean Turbopack has to compile any possible file anywhere in the application in order to satisfy the dynamic path.
floydophone
floydophone
What are the upcoming React / Next.js features you are most excited about?
From Sam, Aurora and Joseph:
- New Next.js primitives for fetching data apart from navigations (e.g. polling a page for updates, infinite scrolling feeds, tooltips with lazily fetched data, etc.)
- Root params is an awesome new primitive that brings additional static features to Next.js apps, and there are additional static-aware primitives coming to Next.js that will be useful for things like feature flags and user experiments
- Fragment refs & View Transitions becoming stable in React 19.3
- browser() API in React 19.3 for opting a client component out of SSR
- New APIs coming that let you control how much of a page should be prerendered before, during, and after a navigation. This one is exciting because it gives you a more fine-grained way to balance eagerly rendering more of an important page (or a page that’s more likely to be visited next) vs. excluding expensive parts of a page from being rendered during a prefetch.
floydophone
floydophone
Are there plans to improve the quality, navigability, coherence, stability, and concrete examples in the online documentation—and make it more like the structured docs shipped in dist for agents?
From Sam, Aurora and Joseph:
We actually have an active project for exactly what you're asking for. Historically we've erred on the side of being comprehensive in the docs for all of Next's various features and APIs. Because Next has been around for more than a decade, someone coming into the docs to try to learn the latest mental model for how to think about building a Next app can absolutely feel overwhelmed.
Especially with the recent 16.3 release and us rounding out the design for how we think, or how we want Next apps to be built, we're finally in a great place to add a learning-focused section more like what you see when you click Learn React on react.dev, which will walk you through the programming model end to end. This tutorial and associated learning sections will teach only the current set of APIs that you need to be successful with Next. We're feeling really good about getting this into the community's hands and we're confident the programming model that you walk away with will feel like the simplest version of Next yet.
floydophone
floydophone
Why doesn’t NextJS version numbers adhere to the semver standard?
From Tim:
It’s important to split two topics, API breaking changes and bugs. When talking about breaking changes in the context of semver it’s about making sure that when you upgrade between minor versions e.g. a feature isn’t removed. For example webpack is not suddenly gone.
When talking about breaking changes people are often not talking about semver breaking changes though. They’re talking about bugs they encountered when upgrading that they didn’t run into when they were on the previous version, or bugfixes that cause issues because the bugged behavior is being relied upon.
We’re working on a system to prevent this type of regression and to resolve bug reports quicker, prioritizing the ones reported for new releases so that you get unblocked on upgrading quicker.
floydophone
floydophone
When is the _error.tsx page router finally going to get server side props loading? instead of the legacy hybrid client/server loading?
From Tim:
We are not planning to make API changes to Pages Router at this point.
floydophone
floydophone
How do you integrate AI in your workflow right now ? and how do you see it more deeply integrated with Next's tooling to help agents especially trying to design good frontends
From David:
Agents have become core to our workflow. Our tools and developer experience has been accelerated greatly by AI, a good example is the repo’s GitHub stack skill, which can take a massive PR and cleanly split it into multiple smaller PRs making it easier for us to review each others (or agents) code. At Vercel, design is still mainly orientated around manual decision-making, mockups, but actual implementation is also accelerated with agents and MCP tooling.
floydophone
floydophone
I'm a marketer and a novice web developer. I love what Next enables for the web and that fits my personal mission to democratize publishing. How can I contribute directly to the project?
From David
Your best bet would be using Next.js and by becoming more familiar and advanced with Next, it increases likelihood you and your agents can encounter random edge cases that we haven’t fixed yet! At Vercel, it has been very common to discover issues in Next through simply upgrading projects like v0, management pages, etc, and seeing what happens!
floydophone
floydophone
i'm curious how much of the roadmap is driven by vercel priorities vs what you think would honestly help the state of the framework, its future, and the wider repercussions for the js community?
From Pete:
We operate pretty independently from the rest of Vercel, in an org dedicated to open-source frameworks that also includes other projects like Svelte. And we make decisions based on what the overall community is asking for. Cache components is a great example. It's been our main focus lately and was entirely community driven.
With that said there are a lot of benefits to being part of Vercel. We have access to great security resources, and we are able to dogfood new features at scale on a real CDN quickly to get feedback and drive improvements.
floydophone
Hey that's not very nice!
TanStack Start is pretty good too though and their new branding is great.
For 1) I think the main reason is that Next.js solves a lot of pain points for users. Building fast and reliable apps on the web that compete with the big guys is actually a huge pain in the ass without a framework like Next.js. I think Next is also in this interesting spot where we simultaneously have a ton of mindshare *and* continue to push the envelope on innovation. Normally you don't get both of those in the same project.
For 2) you can always take a more familiar approach if you're just getting started. You don't have to use server actions for example and can instead use more traditional GET/POST handlers https://nextjs.org/docs/app/getting-started/route-handlers