TL;DR

Next.js の App Router で、フォルダ名を ( ) で囲み、URL のパスに影響させずにルートをまとめる仕組み。

なぜ必要か

通常、Next.js の app/ ディレクトリ配下の階層構造は、そのまま URL のパスになる。用途ごとに異なる layout.tsx を適用したいときは、パスを変えずにフォルダを分けたい。フォルダ名を ( ) で囲むと、そのフォルダはパスに含まれなくなる。

仕組み

フォルダ名を ( ) で囲むと、そのフォルダは URL のパスに現れない。グループごとに別の layout.tsx を置ける。

似た仕組みに Private Folder がある。ルーティングの対象から外したいディレクトリは、_components のように名前の先頭に _ を付ける。コロケーションのために使われる。

関連

出典