Next.js Adapters: Build Once, Deploy Everywhere

This ad is not shown to multipass and full ticket holders
JSNation US
JSNation US 2025
November 17 - 20, 2025
New York, US & Online
See JS stars in the US biggest planetarium
Learn More
In partnership with Focus Reactive
Upcoming event
JSNation US 2025
JSNation US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

Tired of bending your deployment process to fit Next.js? With the power of adapters, you can now deploy your app seamlessly to a variety of platforms—from the cloud to your local dev cave. In this talk, we’ll explore how adapters simplify the deployment pipeline and make Next.js feel right at home, no matter where it’s hosted.

This talk has been presented at React Summit 2025, check out the latest edition of this React Conference.

FAQ

The main focus is on Next.js adapters, which aim to make Next.js more open and deployable across different platforms.

The speaker is JJ Casper, who has been working at Vercel for six years, primarily focusing on Next.js and open source projects.

Initial challenges included deploying Next.js using Node servers and Docker environments, moving to serverless functions, and dealing with native modules and file system access.

Next.js adapters aim to simplify deployment by creating an adapter layer that optimizes the app for different platforms without the need for constant reverse engineering.

The adapter interface provides a minimal set of hooks, such as modifying configurations and handling build outputs, allowing for platform-specific optimizations and a more structured deployment process.

Benefits include simplified deployments, platform-agnostic app development, optimized resource usage, better performance, and an improved developer experience.

The 'onBuiltComplete' hook provides a structured output of manifest entries, static files, and middleware, allowing developers to handle them as needed without reverse engineering.

Adapters allow customization of configurations based on the environment, enabling toggling of environment variables and other specific settings through the 'modify config' hook.

Vercel collaborated with partners like Netlify, CloudFlare, OpenNext, and Amplify to refine the adapter interface, gather feedback, and improve deployment experiences.

Future plans include stabilizing the adapter interface, releasing documentation, conducting beta tests, and releasing general availability (GA) versions with partner collaboration.

JJ Kasper
JJ Kasper
7 min
13 Jun, 2025

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Hello, React Summit. Excited to talk about Next.js adapters. Evolution towards adapter solutions to simplify deployment complexities. Minimalist adapter interface for customization and structured output handling. Key hooks and configurations for platform-specific optimizations. Partners collaboration for enhanced experiences in Next.js deployments. Simplified, platform-agnostic deployments for better developer experience.

1. Next.js Adapters Overview

Short description:

Hello, React Summit. Excited to talk about Next.js adapters. Effort to make Next.js open and deployable. JJ Casper, Vercel for six years, mostly Next.js. Love open source and its potential. Overview of deploying Next.js history. Transition to serverless wasn't easy. Challenges with target serverless mode. Attempted mix mode for bundling and tracing files. Optimizing deployment pipelines.

Hello, React Summit. I'm very excited to be here today to talk about Next.js adapters. And this has been our effort over the last few months to make Next.js more open and deployable wherever you want to deploy it.

So to start, I'm JJ Casper. I've been at Vercel for the past six years now, working on mostly Next.js. I absolutely love open source and everything we can do with it. And I'm excited to see how much further we can take it.

All right. So a quick overview. We had gone through a lot of history with deploying Next.js. Way back in the beginning, we had mostly just Node servers. So we had Docker environments, we had now v1 if you've been along for the journey that long. And then we tried to move into this new world of serverless. But putting a whole entire Node server inside of a serverless function wasn't super easy.

So we tried to figure out how to do that. And we came up with this target serverless mode. And it basically tried to bundle all of your code into these as small as possible bundles. But we ran into some issues with that, which mostly came down to native modules and trying to read from the file system and things like that. So we were like, OK, what's next? And then we tried this mix mode, which we called output stand alone for the most part. And that one tried to do a mix of bundling as much as it could, but also tracing the files it couldn't bundle so that you could create a zip file with everything you needed and still be as optimized as possible.

2. Next.js Adapters Evolution

Short description:

Shortcomings in direct deployment. Evolution towards adapter solutions. Specific platform handling challenges. Adapter simplifies deployment complexities. Minimalist adapter interface for optimization. Customizable configurations and structured output handling.

But there's still some shortcomings with that, because you still need a server to resolve the route URL to an entry point and load it with all that logic. So we tried to take the next evolution for adapters. Going back to the deployment challenges, most platforms have very specific handling. Netlify, Vercel, CloudFlare, all have different ways of handling primitives. A Node server alone can't be optimized for each platform as much as needed. Next.js documentation covers reading from the .next folder, but variations exist, leading to reverse engineering needs.

Introducing adapters simplifies this complexity. With adapters, you write your Next.js app as usual, while a separate adapter layer handles optimization for the specific provider. Users can create custom adapters for unique needs. The adapter interface focuses on minimalism to avoid unnecessary complexity. It includes essential hooks like naming the adapter, modifying configurations based on the environment, and providing structured outputs for effective handling of manifest entries, static files, and middleware.

The adaptability of the adapter interface allows for seamless optimization and control. Each adapter can be named for clarity, such as Netlify or Vercel. Customizing configurations based on the environment becomes easier with the modify config hook. The onBuiltComplete feature offers structured output for easy handling of various elements, eliminating the need for reverse engineering. This structured approach ensures compatibility and ease of use in different deployment scenarios.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Routing in React 18 and Beyond
React Summit 2022React Summit 2022
20 min
Routing in React 18 and Beyond
Top Content
Routing in React 18 brings a native app-like user experience and allows applications to transition between different environments. React Router and Next.js have different approaches to routing, with React Router using component-based routing and Next.js using file system-based routing. React server components provide the primitives to address the disadvantages of multipage applications while maintaining the same user experience. Improving navigation and routing in React involves including loading UI, pre-rendering parts of the screen, and using server components for more performant experiences. Next.js and Remix are moving towards a converging solution by combining component-based routing with file system routing.
A Practical Guide for Migrating to Server Components
React Advanced 2023React Advanced 2023
28 min
A Practical Guide for Migrating to Server Components
Top Content
Watch video: A Practical Guide for Migrating to Server Components
React query version five is live and we'll be discussing the migration process to server components using Next.js and React Query. The process involves planning, preparing, and setting up server components, migrating pages, adding layouts, and moving components to the server. We'll also explore the benefits of server components such as reducing JavaScript shipping, enabling powerful caching, and leveraging the features of the app router. Additionally, we'll cover topics like handling authentication, rendering in server components, and the impact on server load and costs.
The New Next.js App Router
React Summit 2023React Summit 2023
27 min
The New Next.js App Router
Top Content
Watch video: The New Next.js App Router
Today's Talk is about the Next.js App Router, which has evolved over the years and is now a core feature of Next.js. The Talk covers topics such as adding components, fetching remote data, and exploring layouts. It also discusses submitting form data, simplifying code, and reusing components. The App Router allows for coexistence with the existing pages router and enables data fetching at the layout level using React Server Components.
You Don’t Know How to SSR
DevOps.js Conf 2024DevOps.js Conf 2024
23 min
You Don’t Know How to SSR
The Talk covers the speaker's personal journey into server-side rendering (SSR) and the evolution of web development frameworks. It explores the use of jQuery for animations in SSR, the challenges faced in integrating React with Umbraco, and the creation of a custom SSR framework. The Talk also discusses the benefits of Next.js and the use of serverless artifacts for deployment. Finally, it highlights the features of Astro, including its function per route capability.
How to properly handle URL slug changes in Next.js
TypeScript Congress 2022TypeScript Congress 2022
10 min
How to properly handle URL slug changes in Next.js
Top Content
This Talk explains how to handle URL slug changes in Next.js by using the getStaticPaths and getStaticProps methods. It covers implementing redirects and provides a solution to eliminate the need for editors to perform additional steps. The approach involves tracking URL slug changes and issuing proper redirects. The speaker encourages the audience to reach out with any questions or experiences with handling URL slugs.
Killing BFFs with GraphQL and Next.js
React Advanced 2021React Advanced 2021
21 min
Killing BFFs with GraphQL and Next.js
Top Content
This talk discusses the challenges and benefits of using Backend for Frontends (BFFs) and microservices in software development. It highlights how Next.js can simplify the creation of BFFs and unify the gateway for microservices. The talk also emphasizes the advantages of Next.js API routes in simplifying the development, deployment, and maintenance of APIs. It showcases the implementation of a BFF using Next.js and API routes, and the extension of API routes in an executable way. The speaker also mentions launching a course on using Next.js API routes for building a serverless GraphQL API.

Workshops on related topic

AI for React Developers
React Advanced 2024React Advanced 2024
142 min
AI for React Developers
Top Content
Featured Workshop
Eve Porcello
Eve Porcello
Knowledge of AI tooling is critical for future-proofing the careers of React developers, and the Vercel suite of AI tools is an approachable on-ramp. In this course, we’ll take a closer look at the Vercel AI SDK and how this can help React developers build streaming interfaces with JavaScript and Next.js. We’ll also incorporate additional 3rd party APIs to build and deploy a music visualization app.
Topics:- Creating a React Project with Next.js- Choosing a LLM- Customizing Streaming Interfaces- Building Routes- Creating and Generating Components - Using Hooks (useChat, useCompletion, useActions, etc)
Tracing: Frontend Issues With Backend Solutions
React Summit US 2024React Summit US 2024
112 min
Tracing: Frontend Issues With Backend Solutions
Top Content
Featured WorkshopFree
Lazar Nikolov
Sarah Guthals
2 authors
Frontend issues that affect your users are often triggered by backend problems. In this workshop, you’ll learn how to identify issues causing slow web pages and poor Core Web Vitals using tracing.
Then, try it for yourself by setting up Sentry in a ready-made Next.js project to discover performance issues including slow database queries in an interactive pair-programming session.
You’ll leave the workshop being able to:- Find backend issues that might be slowing down your frontend apps- Setup tracing with Sentry in a Next.js project- Debug and fix poor performance issues using tracing
This will be a live 2-hour event where you’ll have the opportunity to code along with us and ask us questions.
From Frontend to Fullstack Development With Next.js
React Summit 2025React Summit 2025
91 min
From Frontend to Fullstack Development With Next.js
Featured Workshop
Eric Burel
Eric Burel
Join us as we journey from React frontend development to fullstack development with Next.js. During this workshop, we'll follow along the official Next.js Learn tutorial with Eric Burel, professional trainer and author of NextPatterns.dev. Together, we'll set up a Next.js website and explore its server-side features to build performant apps.
Build a Headless WordPress App with Next.js and WPGraphQL
React Summit 2022React Summit 2022
173 min
Build a Headless WordPress App with Next.js and WPGraphQL
Top Content
Workshop
Kellen Mace
Kellen Mace
In this workshop, you’ll learn how to build a Next.js app that uses Apollo Client to fetch data from a headless WordPress backend and use it to render the pages of your app. You’ll learn when you should consider a headless WordPress architecture, how to turn a WordPress backend into a GraphQL server, how to compose queries using the GraphiQL IDE, how to colocate GraphQL fragments with your components, and more.
Next.js 13: Data Fetching Strategies
React Day Berlin 2022React Day Berlin 2022
53 min
Next.js 13: Data Fetching Strategies
Top Content
Workshop
Alice De Mauro
Alice De Mauro
- Introduction- Prerequisites for the workshop- Fetching strategies: fundamentals- Fetching strategies – hands-on: fetch API, cache (static VS dynamic), revalidate, suspense (parallel data fetching)- Test your build and serve it on Vercel- Future: Server components VS Client components- Workshop easter egg (unrelated to the topic, calling out accessibility)- Wrapping up
From Todo App to B2B SaaS with Next.js and Clerk
React Summit US 2023React Summit US 2023
153 min
From Todo App to B2B SaaS with Next.js and Clerk
Top Content
WorkshopFree
Dev Agrawal
Dev Agrawal
If you’re like me, you probably have a million side-project ideas, some that could even make you money as a micro SaaS, or could turn out to be the next billion dollar startup. But how do you know which ones? How do you go from an idea into a functioning product that can be put into the hands of paying customers without quitting your job and sinking all of your time and investment into it? How can your solo side-projects compete with applications built by enormous teams and large enterprise companies?
Building rich SaaS products comes with technical challenges like infrastructure, scaling, availability, security, and complicated subsystems like auth and payments. This is why it’s often the already established tech giants who can reasonably build and operate products like that. However, a new generation of devtools are enabling us developers to easily build complete solutions that take advantage of the best cloud infrastructure available, and offer an experience that allows you to rapidly iterate on your ideas for a low cost of $0. They take all the technical challenges of building and operating software products away from you so that you only have to spend your time building the features that your users want, giving you a reasonable chance to compete against the market by staying incredibly agile and responsive to the needs of users.
In this 3 hour workshop you will start with a simple task management application built with React and Next.js and turn it into a scalable and fully functioning SaaS product by integrating a scalable database (PlanetScale), multi-tenant authentication (Clerk), and subscription based payments (Stripe). You will also learn how the principles of agile software development and domain driven design can help you build products quickly and cost-efficiently, and compete with existing solutions.