Next.js is an open-source web development framework built on top of Node.js enabling React-based web applications functionalities such as server-side rendering and generating static websites. React documentation mentions Next.js among "Recommended Toolchains" advising it to developers as a solution when "Building a server-rendered website with Node.js". Where traditional React apps can only render their content in the client-side browser, Next.js extends this functionality to include applications rendered on the server-side.
Next.js is a React framework that enables several extra features, including server-side rendering and generating static websites. React is a JavaScript library that is traditionally used to build web applications rendered in the client's browser with JavaScript. Next.js requires Node.js and can be initialized using Node Package Manager. It was originally developed based on six principles: out-of-the-box functionality requiring no setup, JavaScript everywhere, all functions are written in JavaScript, automatic code-splitting and server-rendering, configurable data-fetching, anticipating requests, and simplifying deployment.
Next.js supports styling with CSS as well as precompiled Scss and Sass, CSS-in-JS, and styled JSX. In addition, it is built with TypeScript support and smart bundling. Next.js also supports Incremental Static Regeneration (ISR) and static site generation (SSG) - A compiled version of the website is usually built during build time and saved as a .next folder.