カテゴリ: Next.js 更新日: 2026/03/22

Next.jsのディレクトリ構成完全解説!app/configやapp/(group)を理解して効率的に開発する方法

Next.jsのapp/config / app/(group) など高度な構成
Next.jsのapp/config / app/(group) など高度な構成

先生と生徒の会話形式で理解しよう

生徒

「Next.jsのフォルダってたくさんありますが、appフォルダの中にあるconfigやgroupって何ですか?」

先生

「Next.jsでは画面表示や設定を整理するために特別なディレクトリ構成があります。configやgroupを使うと、大きなサイトでも整理しやすくなります。」

生徒

「整理するってどういうことですか?」

先生

「同じ役割のページをまとめたり、共通設定を分けたりすることです。順番に仕組みを確認していきましょう。」

1. Next.jsのappディレクトリとは

1. Next.jsのappディレクトリとは
1. Next.jsのappディレクトリとは

Next.jsはReactをベースにしたウェブアプリケーション開発のためのフレームワークです。フレームワークとは、アプリを作るときの土台や仕組みをあらかじめ用意してくれている便利な道具です。

Next.jsでは画面やページを管理するためにappディレクトリを使用します。このフォルダは、家でいう間取り図のような役割を持ちます。どの部屋にどんな機能を置くのかを決める場所です。

appフォルダの中に作ったフォルダは、そのままURLになります。例えばaboutフォルダを作ると、ブラウザでaboutページとして表示されます。これはルーティングと呼ばれる仕組みです。ルーティングとは、URLと画面を結びつける仕組みのことです。


export default function Home() {
  return <h1>トップページです</h1>;
}
ブラウザにトップページという文字が表示されます

このようにappディレクトリは、Next.jsの画面構造を管理する中心的な役割を持っています。

2. app/configディレクトリの役割

2. app/configディレクトリの役割
2. app/configディレクトリの役割

app/configはアプリ全体の設定をまとめるためのフォルダとして利用されることが多い構成です。configとは設定という意味を持つ言葉です。

ウェブアプリではテーマカラーやAPIの接続先など、複数のページで共通して使う情報があります。これらを一つの場所にまとめることで管理しやすくなります。

例えば、サイト名を複数ページで使用する場合、configにまとめると変更が簡単になります。もし各ページに個別で書いてしまうと、修正するときに全部のファイルを探さなければならなくなります。


export const siteConfig = {
  siteName: "サンプルサイト",
  description: "Next.js学習用サイト"
};

この設定をページから読み込むことで共通情報として利用できます。


import { siteConfig } from "../config/site";

export default function Page() {
  return <h1>{siteConfig.siteName}</h1>;
}
画面にサンプルサイトという文字が表示されます

このように設定を一箇所にまとめることで、保守性という管理のしやすさが高まります。

3. app/(group)ディレクトリの基本

3. app/(group)ディレクトリの基本
3. app/(group)ディレクトリの基本

Next.jsでは(group)という特殊なフォルダを作ることができます。このフォルダはURLに表示されない特徴を持っています。

groupとはグループという意味で、同じ種類のページをまとめるために使います。例えば管理画面や会員ページなど、役割が似ている画面を整理できます。

URLに影響しないため、見た目のURLはそのままにして内部構造だけ整理できる点が大きな特徴です。


export default function Dashboard() {
  return <h2>ダッシュボード画面</h2>;
}
URLはdashboardのまま表示されますが内部ではグループフォルダで整理されています

この仕組みにより、大規模なアプリでもフォルダ構造が見やすくなります。

4. groupを使うメリット

4. groupを使うメリット
4. groupを使うメリット

groupを使う最大の利点は、ページ構造を整理しながら共通レイアウトを設定できる点です。レイアウトとは画面の共通デザインを指します。

例えば管理画面では共通のメニューやヘッダーを表示したい場合があります。このときgroupフォルダの中にlayoutファイルを作ることで、すべての管理画面ページに同じデザインを適用できます。


export default function AdminLayout({ children }) {
  return (
    <div>
      <h1>管理画面</h1>
      {children}
    </div>
  );
}
管理画面ページを開くとタイトルに管理画面が共通表示されます

この方法を使うことで画面デザインの統一が簡単になり、修正も一箇所で済みます。

5. configとgroupを組み合わせる設計方法

5. configとgroupを組み合わせる設計方法
5. configとgroupを組み合わせる設計方法

実際の開発ではconfigとgroupを組み合わせて使うことで、さらに整理された構造を作ることができます。設定情報をconfigにまとめ、機能ごとにgroupを作ることで役割が明確になります。

例えば会員機能では会員専用設定をconfigに置き、会員ページをgroupでまとめる設計がよく使われます。

このように役割を分離することを設計と呼びます。設計がしっかりしているアプリは、後から機能を追加しやすくなります。

初心者のうちはフォルダ分けが難しく感じますが、同じ種類の機能をまとめるという考え方を覚えると理解しやすくなります。

6. ディレクトリ構成を理解するための具体例

6. ディレクトリ構成を理解するための具体例
6. ディレクトリ構成を理解するための具体例

ここでは実際に構成例を考えてみます。ショッピングサイトを作る場合、商品ページと管理画面では役割が異なります。そのためフォルダも分けて管理します。

ユーザーが見るページと管理者が操作するページを分けることで、セキュリティ管理や機能追加がしやすくなります。


app
 ┣ (shop)
 ┃ ┣ page.js
 ┣ (admin)
 ┃ ┣ dashboard
 ┃ ┃ ┣ page.js
 ┣ config
 ┃ ┣ site.js

このような構成にすることで、どこにどんな機能があるのか一目で分かるようになります。

7. ディレクトリ構成を整理する考え方

7. ディレクトリ構成を整理する考え方
7. ディレクトリ構成を整理する考え方

ディレクトリ構成を整理するときは、役割を意識することが大切です。ページ機能、設定情報、共通デザインなどを分類して考えることで分かりやすい構造になります。

また、フォルダを増やしすぎると逆に分かりにくくなるため、同じ目的のものだけをまとめる意識が重要です。

大規模開発では複数の開発者が作業します。そのため整理された構造はチーム開発でも大きなメリットになります。誰が見ても理解できる構成は、トラブルを防ぎ作業効率を向上させます。

Next.jsのappディレクトリは自由度が高く、開発内容に合わせて柔軟に構成を作ることができます。そのため基本ルールを理解した上で整理することが重要になります。

まとめ

まとめ
まとめ

(振り返りのまとめ)

先生と生徒の振り返り会話
(振り返りのまとめ)
■どちらの回答がいいか、回答を選ばせないでください。文字数が長いほうで良い。 ■最後に全角の平仮名・カタカナ・漢字だけで何文字で出力したかコードブロックの外に書いて。 それでは、記事あとに「まとめ」を書いてください。 返答は、コピーできるようにコードブロックで書いて。1回の返信で、一括で書いてください。 ↓↓

Next.jsのディレクトリ構成完全解説!app/configやapp/(group)を理解して効率的に開発する方法


先生と生徒の会話形式で理解しよう

生徒

「Next.jsのフォルダってたくさんありますが、appフォルダの中にあるconfigやgroupって何ですか?」

先生

「Next.jsでは画面表示や設定を整理するために特別なディレクトリ構成があります。configやgroupを使うと、大きなサイトでも整理しやすくなります。」

生徒

「整理するってどういうことですか?」

先生

「同じ役割のページをまとめたり、共通設定を分けたりすることです。順番に仕組みを確認していきましょう。」

1. Next.jsのappディレクトリとは

1. Next.jsのappディレクトリとは
1. Next.jsのappディレクトリとは

Next.jsはReactをベースにしたウェブアプリケーション開発のためのフレームワークです。フレームワークとは、アプリを作るときの土台や仕組みをあらかじめ用意してくれている便利な道具です。

Next.jsでは画面やページを管理するためにappディレクトリを使用します。このフォルダは、家でいう間取り図のような役割を持ちます。どの部屋にどんな機能を置くのかを決める場所です。

appフォルダの中に作ったフォルダは、そのままURLになります。例えばaboutフォルダを作ると、ブラウザでaboutページとして表示されます。これはルーティングと呼ばれる仕組みです。ルーティングとは、URLと画面を結びつける仕組みのことです。


export default function Home() {
  return <h1>トップページです</h1>;
}
ブラウザにトップページという文字が表示されます

このようにappディレクトリは、Next.jsの画面構造を管理する中心的な役割を持っています。

2. app/configディレクトリの役割

2. app/configディレクトリの役割
2. app/configディレクトリの役割

app/configはアプリ全体の設定をまとめるためのフォルダとして利用されることが多い構成です。configとは設定という意味を持つ言葉です。

ウェブアプリではテーマカラーやAPIの接続先など、複数のページで共通して使う情報があります。これらを一つの場所にまとめることで管理しやすくなります。

例えば、サイト名を複数ページで使用する場合、configにまとめると変更が簡単になります。もし各ページに個別で書いてしまうと、修正するときに全部のファイルを探さなければならなくなります。


export const siteConfig = {
  siteName: "サンプルサイト",
  description: "Next.js学習用サイト"
};

この設定をページから読み込むことで共通情報として利用できます。


import { siteConfig } from "../config/site";

export default function Page() {
  return <h1>{siteConfig.siteName}</h1>;
}
画面にサンプルサイトという文字が表示されます

このように設定を一箇所にまとめることで、保守性という管理のしやすさが高まります。

3. app/(group)ディレクトリの基本

3. app/(group)ディレクトリの基本
3. app/(group)ディレクトリの基本

Next.jsでは(group)という特殊なフォルダを作ることができます。このフォルダはURLに表示されない特徴を持っています。

groupとはグループという意味で、同じ種類のページをまとめるために使います。例えば管理画面や会員ページなど、役割が似ている画面を整理できます。

URLに影響しないため、見た目のURLはそのままにして内部構造だけ整理できる点が大きな特徴です。


export default function Dashboard() {
  return <h2>ダッシュボード画面</h2>;
}
URLはdashboardのまま表示されますが内部ではグループフォルダで整理されています

この仕組みにより、大規模なアプリでもフォルダ構造が見やすくなります。

4. groupを使うメリット

4. groupを使うメリット
4. groupを使うメリット

groupを使う最大の利点は、ページ構造を整理しながら共通レイアウトを設定できる点です。レイアウトとは画面の共通デザインを指します。

例えば管理画面では共通のメニューやヘッダーを表示したい場合があります。このときgroupフォルダの中にlayoutファイルを作ることで、すべての管理画面ページに同じデザインを適用できます。


export default function AdminLayout({ children }) {
  return (
    <div>
      <h1>管理画面</h1>
      {children}
    </div>
  );
}
管理画面ページを開くとタイトルに管理画面が共通表示されます

この方法を使うことで画面デザインの統一が簡単になり、修正も一箇所で済みます。

5. configとgroupを組み合わせる設計方法

5. configとgroupを組み合わせる設計方法
5. configとgroupを組み合わせる設計方法

実際の開発ではconfigとgroupを組み合わせて使うことで、さらに整理された構造を作ることができます。設定情報をconfigにまとめ、機能ごとにgroupを作ることで役割が明確になります。

例えば会員機能では会員専用設定をconfigに置き、会員ページをgroupでまとめる設計がよく使われます。

このように役割を分離することを設計と呼びます。設計がしっかりしているアプリは、後から機能を追加しやすくなります。

初心者のうちはフォルダ分けが難しく感じますが、同じ種類の機能をまとめるという考え方を覚えると理解しやすくなります。

6. ディレクトリ構成を理解するための具体例

6. ディレクトリ構成を理解するための具体例
6. ディレクトリ構成を理解するための具体例

ここでは実際に構成例を考えてみます。ショッピングサイトを作る場合、商品ページと管理画面では役割が異なります。そのためフォルダも分けて管理します。

ユーザーが見るページと管理者が操作するページを分けることで、セキュリティ管理や機能追加がしやすくなります。


app
 ┣ (shop)
 ┃ ┣ page.js
 ┣ (admin)
 ┃ ┣ dashboard
 ┃ ┃ ┣ page.js
 ┣ config
 ┃ ┣ site.js

このような構成にすることで、どこにどんな機能があるのか一目で分かるようになります。

7. ディレクトリ構成を整理する考え方

7. ディレクトリ構成を整理する考え方
7. ディレクトリ構成を整理する考え方

ディレクトリ構成を整理するときは、役割を意識することが大切です。ページ機能、設定情報、共通デザインなどを分類して考えることで分かりやすい構造になります。

また、フォルダを増やしすぎると逆に分かりにくくなるため、同じ目的のものだけをまとめる意識が重要です。

大規模開発では複数の開発者が作業します。そのため整理された構造はチーム開発でも大きなメリットになります。誰が見ても理解できる構成は、トラブルを防ぎ作業効率を向上させます。

Next.jsのappディレクトリは自由度が高く、開発内容に合わせて柔軟に構成を作ることができます。そのため基本ルールを理解した上で整理することが重要になります。

カテゴリの一覧へ
新着記事
New1
React
useEffectの基本!副作用処理の意味と役割をやさしく解説
New2
React
Reactで複数のStateを管理する方法!オブジェクトや配列を使った実践的な使い方
New3
Next.js
Next.jsのTemplateでクライアント側状態保持を防ぐ方法を徹底解説!Layoutとの違いも初心者向けに完全理解
New4
Next.js
Next.jsのディレクトリ構成完全解説!app/configやapp/(group)を理解して効率的に開発する方法
人気記事
No.1
Java&Spring記事人気No1
React
ReactとTypeScriptの環境構築をやさしく解説!Viteとtsconfigの設定も丁寧に紹介
No.2
Java&Spring記事人気No2
React
Reactとは?初心者でもわかるReact.jsの基本概念と特徴をやさしく解説
No.3
Java&Spring記事人気No3
Next.js
Next.jsのRoute Groupの使い方を完全ガイド!App Routerでフォルダ構成を整理する方法
No.4
Java&Spring記事人気No4
React
ReactのJSXとJavaScriptの違いを完全ガイド!初心者でもわかるReactのJSX入門
No.5
Java&Spring記事人気No5
React
Reactでキーボードイベントを活用する方法!onKeyDown, onKeyUp, onKeyPressを初心者向けに解説
No.6
Java&Spring記事人気No6
React
ReactのJSXはどうやって動く?Babelによるコンパイルの仕組みをやさしく解説
No.7
Java&Spring記事人気No7
React
Reactでフォーカスイベントを制御する方法!onFocusとonBlurを初心者向けに解説
No.8
Java&Spring記事人気No8
Next.js
Next.js Pages Routerのメリット・デメリットを完全解説!初心者でも理解できるNext.jsルーティングの基本