Storybook
公式サイトStorybookとは
Storybookは、ボタンや入力欄、一覧表といった画面の部品を、アプリケーション本体から切り離して一つずつ表示し、「通常」「読み込み中」「エラー」「入力済み」などのさまざまな状態を並べて確認するためのツールです。部品と状態の組み合わせを「ストーリー」として登録しておくと、カタログのように一覧できます。開発者だけでなく、デザイナーやお客様側の担当者もブラウザで部品を確認できるため、実装とデザインのずれを早い段階で見つけるのに役立ちます。表示のスクリーンショットを比較して意図しない変化を検出する仕組みとも組み合わせられます。
弊社が採用する理由
弊社では、ReactとNext.jsで開発する業務システムやWebサイトの画面部品の管理にStorybookを採用しています。業務システムでは同じ部品を多数の画面で使うため、部品ごとに状態を網羅して確認できることが品質に直結します。たとえば入力フォームの部品なら、未入力、入力中、エラー表示、確定後といった状態を実際の画面を操作せずに一覧できるため、確認の抜けを防げます。shadcn/uiやTailwind CSSと組み合わせ、デザインの基準に沿った部品ができているかを、アプリケーションの完成を待たずに確認していただけます。基本設計・詳細設計の段階で画面部品のカタログを共有できるため、認識のずれによる手戻りを減らせます。Vitestと連携して部品の振る舞いを自動検証する用途にも使っており、フレームワーク更新後の見た目の確認にも役立っています。
向いている案件
- 画面数が多く、共通部品を使い回す業務システムの開発
- デザイナーやお客様と部品単位で見た目を確認しながら進めるプロジェクト
- 更新時に画面部品の見た目が変わっていないことを確認したい場合
保守・移行の観点
Storybookは部品が増えるほど価値が高まる一方、ストーリーの更新を怠るとカタログと実装がずれて信頼性を失います。部品を変更する際は必ず対応するストーリーも更新する運用を徹底し、GitHub Actionsでビルドが通ることを検証します。Storybook本体の更新は、Reactやビルドツールの更新と連動するため、依存関係の棚卸しの時期に合わせて対応します。スクリーンショット比較を行う場合は、比較用の基準画像の管理と更新の手順を決めておくと運用が安定します。
組み合わせて使う技術
よくあるご質問
Storybookはお客様側でも見られますか?
はい。ブラウザで閲覧できる形で公開できるため、開発の途中段階で画面部品の見た目を確認いただけます。デザインの認識合わせに活用しています。
小規模なWebサイトでもStorybookを使いますか?
部品の数が少ないサイトでは導入の効果が薄いため、必ずしも使いません。共通部品を多数の画面で使う業務システムや、デザインの確認を細かく行いたい案件で採用しています。
関連するサービス
関連する開発ガイド
- 検収(受け入れテスト)で確認すべきことWebシステムの検収で発注側が確認すべきことを、検収条件の確認、テスト項目の作成、ステージングでの実施、不具合の記録と切り分け、検収書の作成の手順で解説し、契約不適合責任との関係も整理します。
- 要件定義とは何をすることか — 発注前に整理したい5つのこと要件定義はシステムで何を実現するかを合意する工程です。発注前に整理したい目的と成功条件、現状業務の流れ、利用者と権限、扱うデータ、やらないことの5つを、想定例を交えて解説します。
- 納品後の保守・運用で何が必要かシステムは納品後も動かし続ける必要があります。監視、バックアップと復元テスト、OS・ミドルウェア・CMSのアップデート、ステージングでの検証、保守契約の範囲という基本を整理します。
関連用語: 基本設計・詳細設計、レスポンシブデザイン、検収
監修: Unlogical Systems合同会社(杉並区・西荻窪)公開