利用する関連パッケージのインストール
2025-11-16

前回は Next.js のトップページでブログのタイトルを取得するところまで進めました。今回は、ブログを作っていくにあたって手持ちのライブラリなどを追加して環境を整えて行きます。

アイコンライブラリの追加

今回、サイトで利用するアイコンは Lucide React を利用していきます。

以下のコマンドを実行してください。

sh

他にも様々なライブラリアがあります。好みにあわせて利用してください。

Storybook を利用できるようにする

コンポーネントの管理で便利な Storybook をこのプロジェクトでも利用できるようにして行きます。なお、手順は以下のページを参考にして進めて行きます。

以前の記事を参考にする場合ですが、当時は postcss.config.mjs の記述でエラーが出ていましたが、Next.js のバージョンがあがって改善しています(以前の記事にも同じ注意書きを入れておきました)。

Storybook の追加

Next.js のプロジェクトのルートで、以下のコマンドを実行します。

sh

インストールが完了すると、storybook が自動的に起動します。次回以降は以下のコマンドで起動します。

sh

これで起動するようになりました。

Image

Tailwind CSS のファイルの変更

Next.js で利用している Tailwind CSS のファイルは apps/nextjs/app/globals.css に展開されています。これを、apps/nextjs/styles/globals.css に移動します。

        • globals.css元のファイルの位置
        • globals.css新しい位置

Next.js でこのファイルを参照しているコードを変更します。

apps/nextjs/app/layout.tsx

また、Storybook の preview.ts のファイルも上記の同じファイルを参照するようにします。

apps/nextjs/.storybook/preview.ts

コンポーネントと CSS を整理する

続いて Storybook がサンプルとして提供しているファイルを削除して人まずサンプルのコンポーネントを配置します。

まず、Storybook のサンプルとして入っているコンポーネントのフォルダ名を apps/nextjs/stories から apps/nextjs/components に変更します。また、stories.tsも一括で管理するために、storybook のフォルダを作成します。

        コンポーネントの参照場所が変わるため、以下のファイルで参照しているパスを変更してください。

        apps/nextjs/.storybook/main.ts

        続いてサンプルのファイルを配置して行きます。コンポーネントのファイルとして以下のコードを利用してください。

        apps/nextjs/components/Hero.tsx

        続いて、stories のファイルを作成します。

        apps/nextjs/storybook/Hero.stories.ts

        最後にスタイルシートを調整します。スタイルシートのファイルを1つ追加します。

        apps/nextjs/styles/hero.css

        上記のスタイルのファイルを globals.css に反映させます。他のコードを削除して、以下のようにします。

        apps/nextjs/styles/globals.css

        今回、サンプルの画像を public に追加します。画像ファイルに関しては、apps/nextjs/storybook/Hero.stories.ts にてパスを記載しているため、任意のファイルをアップした場合は画像のパスを変更してください。

        動作確認

        上記の変更がどのように適用されるか確認をして行きます。

        Storybook の確認

        まず Storybook での動作確認です。以下のコマンドを実行してください。

        sh

        以下のように Hero コンポーネントがサンプルとして表示できています。

        Image

        Next.js での確認

        続いて Next.js で動作確認をします。まだ今回のコンポーネントを追加していないため、トップページに Hero を追加します。

        まずコンポーネントを読み込みます。

        apps/nextjs/app/page.tsx

        続いてこのコンポーネントを利用するために、同じファイルに Hero のあたりを追加してください。

        apps/nextjs/app/page.tsx

        これで準備が完了です。 Next.js のコンポーネントを起動します。

        sh

        以下のように、コンポーネントを利用することができました。

        Image

        まとめ

        これからブログを作っていくにあたって、コンポーネントの管理ができると便利なので、取り急ぎ Storybook を追加しました。またサイトで利用するアイコンのライブラリも最初に追加しており、さっそく Hero のところでアイコンとして利用しています。

        ここまでのコードは、以下のブランチで公開しています。