本文へ移動
Unlogical Systems

Ctrl / ⌘ + K でも開けます

    Unlogical Systems

    shadcn/ui を採用する理由

    shadcn/uiは、ボタンやフォーム、ダイアログなどの画面部品をプロジェクトに取り込んで自由に編集できるReact向けの部品集です。弊社が業務システムの画面開発でshadcn/uiを採用する理由と、保守の考え方を解説します。

    shadcn/uiとは

    shadcn/uiは、ボタン、入力フォーム、選択リスト、ダイアログ、一覧表といった画面の共通部品をまとめたReact向けの部品集です。一般的なライブラリのようにパッケージとして読み込むのではなく、必要な部品のソースコードを自分のプロジェクトにコピーして使う点が特徴です。そのため、見た目や振る舞いを案件の要件に合わせて自由に書き換えられます。見た目の指定にはTailwind CSSを使い、キーボード操作や読み上げ対応といったアクセシビリティの基本は、土台となるライブラリが担っています。

    弊社が採用する理由

    弊社では、Next.jsとReactで開発する業務システムの管理画面や利用者向け画面で、shadcn/uiを採用しています。業務システムでは、フォームや一覧表、確認ダイアログといった同じ種類の部品を多数の画面で使うため、最初に共通部品を揃えることが開発速度と品質の両方に効きます。shadcn/uiは部品がプロジェクトの中にソースコードとして存在するため、案件固有の仕様、たとえば日本語の日付表記や独自の入力ルールを、外部ライブラリの制約に縛られずに実装できます。Tailwind CSSと同じ基準値で見た目を管理でき、Storybookで部品ごとの表示を確認しながら進められる点も相性が良いところです。将来ほかの開発会社が引き継ぐ場合でも、部品のコードがすべて手元にあるため、ブラックボックスになりにくいと考えています。

    向いている案件

    • フォームや一覧表を多数持つ業務システムの管理画面
    • デザインを案件ごとに調整したいReactの画面開発
    • 短期間で共通部品を揃えて開発を始めたいプロジェクト

    保守・移行の観点

    shadcn/uiの部品はプロジェクトの中にコピーされるため、本家の更新が自動で反映されることはありません。これは自由に編集できる利点の裏返しで、不具合修正や新機能を取り込む際は、差分を確認しながら手動で反映します。部品を編集した箇所を記録しておくと、更新時の突き合わせが楽になります。土台となるライブラリやTailwind CSSの更新には追従が必要なため、依存関係の棚卸しの際に合わせて確認し、ステージング環境で主要な画面を確認してから本番に反映します。

    組み合わせて使う技術

    よくあるご質問

    既製の部品を使うと、他社のシステムと似た見た目になりませんか?

    shadcn/uiは色や形の基準を自由に変えられるため、案件ごとのデザインに合わせて調整できます。見た目の骨組みと操作の使いやすさを共通化しつつ、印象は個別に作り込めます。

    デザイン会社が作った画面デザインをそのまま実装できますか?

    可能です。部品のコードがプロジェクト内にあるため、デザインに合わせて自由に書き換えられます。事前に色や余白の基準を共有いただけると、実装のずれを減らせます。

    関連するサービス

    関連する開発ガイド

    関連用語: レスポンシブデザインステージング環境基本設計・詳細設計

    監修: Unlogical Systems合同会社杉並区・西荻窪)公開

    まずは現場のエンジニアにご相談ください

    営業担当ではなく、実際に設計・開発を行うエンジニアが直接お答えします。ご相談・お見積りは無料、1営業日以内にご回答いたします。

    無料でご相談・お見積り

    資料の添付は、送信後に届く受付メールへの返信でお送りいただけます。

    相談・見積りは無料
    1営業日以内にご回答します

    無料で相談する