Next.js
Reactのドキュメントには、「Node.jsを使用してサーバー側でレンダリングされたWebサイトを構築する」際の解決策として、開発者にアドバイスする「推奨ツールチェーン」の中でNext.jsが記載されている。
従来のJavaScriptではWebアプリケーションの開発が困難なので、Reactが使われるようになった。従来のReactアプリはクライアント側のブラウザでのみコンテンツをレンダリングできるが、Next.jsはこの機能を拡張して、サーバー側でレンダリングされるアプリケーションを含まれる。これを一般的にはプリレンダリングといい、Next.jsではサーバーサイドレンダリング(SSR)と静的サイトジェネレーター(SSG)という。Reactではこのプリレンダリングが出来ずに、最初の表示画面が白くなりNext.jsよりも速度が遅くなるために、検索エンジン最適化(SEO)など速度を重視する観点から、Next.jsが有利になる。
Next.jsの著作権と商標は、Vercel(以前はZEIT)が所有しており、オープンソース開発も維持および主導している。2020年の初めに、Vercelがソフトウェアの改善をサポートするためにシリーズAの資金で2,100万ドルを確保したことが発表された。Next.jsの作者であるGuillermo Rauchは、現在VercelのCEOであり、プロジェクトの主任開発者はTim Neutkensである。VercelではNext.jsなどをGitHubなどで一般公開が出来るデプロイや、テンプレートをクローンすることが出来る無償と有償のホスティングサービスなどを提供している。
Next.jsは、 CSSだけでなく、プリコンパイルされたScssとSass 、 CSS-in-JS 、およびスタイル化されたJSXを使用したスタイリングをサポートしている。更に、 TypeScriptサポートとスマートバンドルで構築されている。オープンソースのトランスパイラーBabelは、コードをブラウザーで使用できるJavaScriptに変換およびコンパイルするために使用されている。後でモジュールをバンドルするために、別のオープンソースツールであるWebpackが使用される。これらのツールはすべて、ターミナルのnpmで使用する。
Next.jsの主な機能は、サーバー側のレンダリングを使用してWebブラウザーの負担を軽減し、セキュリティを強化することである 。これは、アプリケーションの任意の部分またはプロジェクト全体に対して実行できるため、コンテンツが豊富なページをサーバー側のレンダリング用に選択できる。また、サイトのアセットをまだダウンロードしていないWebブラウザーの負担を軽減するために、初めての訪問者に対してのみ実行できる。