ProNextJS
    Loading
    lesson

    The React, Next.js, and Vercel Controversy

    Jack HerringtonJack Herrington

    There's been some controversy in the development community surrounding the relationship between React, Next.js, and Vercel. Let's look at the background of this controversy and how it affects hosting and deployment options for Next.js applications.

    Background

    React, an open-source library maintained by Meta (formerly Facebook), was released in 2013. Three years later, Guillermo Rauch created Next.js to provide consistent server-side rendering for React applications. From Next.js came Vercel, a for-profit company that was established to offer hosting services. Vercel makes it easy to deploy Next.js applications, but you can also use it to host other frameworks like Svelte (which was created by Rich Harris, an employee of Vercel).

    The Controversy

    The controversy stems from the close relationship between Vercel and key contributors to the React framework. Some people are concerned that Vercel may be influencing the direction of React development. These fears were heightened during the Next.js conference in 2023, where Vercel released the App Router, which relies on React Server Components (RSCs) added to the React core by the React team.

    With several React core team members in attendance at the conference, it appeared to some that the React team was too closely tied to Next.js, potentially favoring it over competing frameworks like Remix, Redwood.js, and Astro.

    Hosting Concerns

    Another aspect of the controversy revolves around hosting Next.js applications. When hosting a Next.js app on Vercel, certain features like specific caches and partial pre-rendering are unlocked. This has led to concerns about the relationship between Vercel and React.

    However, it's important to note that Next.js can be deployed on any hosting provider. You can dockerize it, use SST to deploy it on Amazon, or even use OpenNext. While some features may be exclusive to Vercel, there are still many options available for hosting Next.js applications.

    The Future of React and Next.js

    Despite the controversy, there's no need to be overly concerned about the future of React or Next.js. It's unlikely that either Vercel or Meta would directly tie these technologies to a specific profit motive. As RSCs become more widely adopted by other frameworks like Waku, Remix, and Redwood.js, the controversy is likely to subside.

    Course Approach

    In this course, we will use Vercel to deploy our first getting started application. This choice is made for simplicity and to demonstrate an end-to-end deployment flow, which is an essential part of professional Next.js development. However, we will also explore other deployment options for Next.js beyond Vercel.

    It's important to be informed about the background of these issues and the concerns surrounding Vercel, Next.js, and React. This course is not funded by Vercel, and the instructor has no financial relationship with the company.

    Now that we've covered the controversy, let's dive into building our Next.js getting started application and explore the benefits and drawbacks of deploying it on Vercel.

    Transcript

    All right, I'm going to take a quick aside here to give you a little background about the controversy between React and Next.js and Vercel. Because the practical issue coming out of that is that there'll be some potentially hesitancy around where to host Next.js, in particular hosting it on Vercel.

    So I want to get a few facts on the table. React is an open-source library, is maintained by the for-profit company Meta, Facebook, and it was released in 2013. Next.js came along three years later, Guillermo Rauch wrote it so that React would handle

    server-side rendering consistently, and from that they created Vercel, which is a for-profit company. Now, Vercel doesn't make its money selling us Next.js, it makes its money selling hosting services, and it just so happens that it makes it really easy to host Next.js, but you can

    actually use Vercel to host any framework. For example, you could host Svelte on Vercel, which is cool because Vercel also employs Rich Harris, who's the author of Svelte. And that's where a little bit of the controversy comes in, Vercel also employs several key contributors to the React framework.

    And that has folks thinking that maybe there is some pushing by the Vercel folks on the React core. And those fears were only exacerbated by the Next.js conference, where Vercel released the App Writer in 2023. The App Writer is only made possible by the addition of RSCs, or React Server Components,

    by the React team to the React core. And several React core team members were in attendance at that conference, and that left a lot of folks with the impression that the React team was really closely tied, maybe too closely tied, to Next.js in particular, when there are other competing frameworks

    like Remix, or Redwood.js, and Astro, and more. Lots of frameworks are on top of React. Now, on top of all that, when it comes to hosting, if you host Next.js on Vercel, you unlock specific features, like certain caches, and this really cool feature called partial pre-rendering.

    So you can see why folks are worried about that relationship between Vercel and React. Now that being said, you can still deploy Next.js on any hosting provider. You can dockerize it, you can use SST to deploy it on Amazon, it's actually really easy and good.

    There's OpenNext, there are lots of ways to deploy Next.js. But there are specific features, like partial pre-rendering, that you only get with Vercel. Now another thing that fed that controversy was that RSCs were only available on Next.js in the beginning, and only using canary builds of React.

    But now other frameworks have started adopting RSCs. Waku is one, and also Remix and Redwood.js, they're going to be adopting RSCs. And once that happens, I think a lot of this controversy is going to die down. Now personally, I'm not concerned about the future of React or Next.js.

    I think both Vercel and Meta would be really foolish if they specifically tied either of those technologies to some direct profit motive, I just don't see that happening. Now when it comes to this course, we are going to use Vercel to deploy this first getting started application, because frankly, it's just really easy.

    And I want you to be able to see an end-to-end deployment flow as we go along, because that's part of professional Next.js development. But I'm also going to show you, during the course, other ways of deploying Next.js, other than Vercel. Now the reason I'm covering this controversy right now is because I want you to hear about it.

    I think that in particular, when you talk about hosting your application, where that's going to go, there's going to be questions like this, and so you should be informed about the background of these issues and why people have concerns about Vercel, Next.js, and React. And in case you were curious, this course was not funded by Vercel, and I personally

    have no financial relationship with Vercel. So now that we've covered a little bit of this controversy, let's go build our Next.js getting started application, deploy it on Vercel, just so you can see it for yourself, and understand the benefits and the drawbacks of deploying it there.