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

Next.js×StorybookでUI開発環境を整える方法!初心者でもわかるNext.jsの環境構築

Next.js×StorybookでUI開発環境を整える方法
Next.js×StorybookでUI開発環境を整える方法

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

生徒

「Next.jsで画面を作るとき、デザインの確認ってどうやるんですか?」

先生

「画面の部品を一つずつ確認できる便利な道具があります。」

生徒

「パソコンをほとんど触ったことがなくても使えますか?」

先生

「大丈夫です。Next.jsと一緒に使えるStorybookを、ゆっくり説明していきましょう。」

1. Next.jsとStorybookとは何か

1. Next.jsとStorybookとは何か
1. Next.jsとStorybookとは何か

Next.jsは、WebサイトやWebアプリを作るための道具です。例えるなら、家を建てるための設計図と工具がセットになった箱のような存在です。 一方、Storybookは、画面の部品だけを並べて確認できるショーケースのようなものです。 ボタンや文字表示などを単体で確認できるので、完成後のイメージがとても分かりやすくなります。

プログラミング未経験の方は、「画面の部品」という言葉に戸惑うかもしれません。 ここでいう部品とは、ボタン、見出し、入力欄など、画面を構成する小さなパーツのことです。

2. Storybookを使うメリット

2. Storybookを使うメリット
2. Storybookを使うメリット

Storybookを使う一番のメリットは、画面全体を作らなくても確認できる点です。 料理に例えると、完成した定食を見る前に、お味噌汁やおかずを一品ずつ味見できるような感覚です。

Next.jsと組み合わせることで、実際の画面に近い状態を保ったまま、安心してUIの調整ができます。 UIとは、利用者が目で見て操作する部分のことを指します。

3. Next.jsプロジェクトにStorybookを追加する流れ

3. Next.jsプロジェクトにStorybookを追加する流れ
3. Next.jsプロジェクトにStorybookを追加する流れ

Storybookは、すでに作成したNext.jsのプロジェクトに追加して使います。 追加作業は、決められたコマンドを入力するだけなので、難しい操作はありません。

初心者の方は、「コマンド」と聞くと不安になるかもしれませんが、これはパソコンに指示を出すための短い文章のようなものです。 文字をそのまま入力すれば問題ありません。

4. はじめてのStorybook用コンポーネント

4. はじめてのStorybook用コンポーネント
4. はじめてのStorybook用コンポーネント

ここでは、簡単なボタンを例にします。 コンポーネントとは、画面部品をひとまとめにしたものです。


export default function SimpleButton() {
  return (
    <button>押してみる</button>
  );
}
(Storybookの画面に「押してみる」というボタンが表示されます)

5. Storyファイルを書いて表示を確認する

5. Storyファイルを書いて表示を確認する
5. Storyファイルを書いて表示を確認する

Storybookでは、表示確認用のファイルを作ります。 これをストーリーと呼びます。 ストーリーは、「この部品をこういう見た目で表示する」という説明書のような役割です。


import SimpleButton from "./SimpleButton";

export default {
  title: "Sample/SimpleButton",
  component: SimpleButton,
};

export const Default = () => <SimpleButton />;
(Storybookの一覧にボタンが表示され、クリックして確認できます)

6. 文字を表示するコンポーネントの例

6. 文字を表示するコンポーネントの例
6. 文字を表示するコンポーネントの例

次は、文字だけを表示する部品です。 文章表示は、どのWebサイトでも必ず使われる基本要素です。


export default function MessageText() {
  return <p>こんにちは、Next.jsとStorybook</p>;
}
(画面に挨拶文が表示され、文字の大きさや余白を確認できます)

7. propsを使った表示切り替え

7. propsを使った表示切り替え
7. propsを使った表示切り替え

propsとは、部品に渡す情報のことです。 電子レンジに「温め時間」を設定するようなイメージです。


export default function Label({ text }) {
  return <span>{text}</span>;
}

import Label from "./Label";

export const Sample = () => <Label text="表示テスト" />;
(指定した文字が画面に表示され、内容を簡単に切り替えられます)

8. Next.jsとStorybookを一緒に使うときの考え方

8. Next.jsとStorybookを一緒に使うときの考え方
8. Next.jsとStorybookを一緒に使うときの考え方

Next.jsは、完成したWebサイト全体を見るための仕組みです。 Storybookは、その中身を細かく確認するための道具です。 両方を使うことで、作業中の不安や手戻りを減らすことができます。

初心者の方ほど、いきなり全部を作ろうとせず、部品ごとに確認する方法がおすすめです。 Storybookは、その練習にもぴったりな環境です。

まとめ

まとめ
まとめ

ここまで、Next.jsとStorybookを組み合わせたUI開発環境について、初心者の方にもイメージしやすいように順を追って説明してきました。 Next.jsは、WebサイトやWebアプリ全体を構築するための枠組みであり、ページ遷移や表示速度、構成管理を助けてくれる便利な仕組みです。 一方でStorybookは、ボタンや文字表示、ラベルといった画面を構成する小さな部品を、一つずつ切り離して確認できる環境です。 この二つを一緒に使うことで、完成形を想像しながらも、細かい部分を落ち着いて確認できるようになります。

特に、プログラミング未経験やパソコン操作に不慣れな方にとっては、いきなり完成した画面を作ろうとすると、どこでつまずいているのか分からなくなりがちです。 Storybookを使えば、ボタンだけ、文字だけ、といった形で確認できるため、「ここまではできている」という安心感を持ちながら作業を進められます。 これは学習を続けるうえで、とても大きな支えになります。

記事の中では、最初にシンプルなボタンのコンポーネントを作り、それをStorybookで表示する流れを紹介しました。 次に、文字を表示するだけのコンポーネントや、propsを使って表示内容を切り替える方法も確認しました。 propsは、部品に渡す情報であり、同じ部品を使い回しながら表示内容を変えられる重要な考え方です。 この仕組みを理解できると、Next.jsでの画面作りが一気に楽になります。

また、Storybook用のストーリーファイルは、「この部品を、こういう状態で見たい」という説明書のような役割を持っています。 ストーリーを用意しておくことで、あとから見返したときにも、意図した使い方やデザインをすぐに思い出せます。 チーム開発だけでなく、一人で学習している場合でも、自分の理解を整理する助けになります。

Next.jsとStorybookを組み合わせたUI開発は、難しい知識を一度に詰め込む必要はありません。 まずは「部品を作る」「表示を確認する」「少し直す」という流れを繰り返すことが大切です。 その積み重ねが、最終的に見やすく使いやすいWebサイトやWebアプリにつながっていきます。 焦らず、部品ごとに確認する姿勢を大切にしていきましょう。

まとめとしてのサンプルプログラム


export default function SummaryButton({ label }) {
  return (
    <button>{label}</button>
  );
}

import SummaryButton from "./SummaryButton";

export const Example = () => <SummaryButton label="まとめ確認" />;
(Storybook上で「まとめ確認」というボタンが表示され、部品としての動作を確認できます)
先生と生徒の振り返り会話

生徒「Next.jsとStorybookを一緒に使う意味が、だいぶ分かってきました。」

先生「それは良かったですね。最初は全体像が見えにくいですが、部品ごとに考えると理解しやすくなります。」

生徒「ボタンや文字だけを確認できるのが安心でした。全部作らなくていいんですね。」

先生「その通りです。Storybookは途中経過を確認するための心強い味方です。」

生徒「propsも、同じ部品を使い回せる仕組みだと分かりました。」

先生「理解できていますね。その考え方が、Next.jsでの画面作りの基礎になります。」

生徒「これからは、部品を作って確認しながら進めてみます。」

先生「それが一番の近道です。少しずつ慣れていきましょう。」

カテゴリの一覧へ
新着記事
New1
React
Reactでできること一覧!初心者でもわかるWebアプリ・スマホアプリ・PWAの活用方法
New2
React
React.jsが人気な理由!VueやAngularとの違いを初心者向けに徹底比較
New3
Next.js
Next.js×StorybookでUI開発環境を整える方法!初心者でもわかるNext.jsの環境構築
New4
Next.js
Next.js×Dockerで開発環境を構築する方法!初心者でも迷わないNext.js環境構築ガイド
人気記事
No.1
Java&Spring記事人気No1
React
Reactでキーボードイベントを活用する方法!onKeyDown, onKeyUp, onKeyPressを初心者向けに解説
No.2
Java&Spring記事人気No2
React
ReactのPresentational Componentを完全ガイド!初心者でもわかるStateを持たないコンポーネントの特徴
No.3
Java&Spring記事人気No3
React
Reactでフォーカスイベントを制御する方法!onFocusとonBlurを初心者向けに解説
No.4
Java&Spring記事人気No4
React
ViteでReact開発環境を構築する手順を完全ガイド!初心者でもできるReactの環境構築
No.5
Java&Spring記事人気No5
React
Reactとは?初心者でもわかるReact.jsの基本概念と特徴をやさしく解説
No.6
Java&Spring記事人気No6
Next.js
Next.js Server Componentsのメリット・デメリットを完全解説!初心者でもわかるNext.jsの基本
No.7
Java&Spring記事人気No7
React
Reactのカードコンポーネントを汎用的に設計する方法!初心者でもわかる再利用の考え方
No.8
Java&Spring記事人気No8
React
ReactでAxiosローディング状態を管理する方法を完全ガイド!初心者でもわかる非同期通信の基本