Viteプロジェクトでのshadcnインストール時のTailwindエラー
問題の説明
Viteで作成したReactプロジェクトにshadcnを導入する際、npx shadcn@latest init
コマンド実行中に次のエラーが発生します:
No Tailwind CSS configuration found at /your/project/path.
It is likely you do not have Tailwind CSS installed or have an invalid configuration.
Install Tailwind CSS then try again.
Visit https://tailwindcss.com/docs/guides/vite to get started.
この問題は、一見正しくTailwind CSSをインストールしているように見える場合でも発生します(下記の手順後)。具体的には以下のコマンドを実行した後でもエラーがでます:
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p
エラーの根本原因は、TailwindのディレクティブがグローバルCSSファイルに正しく追加されていないことです。公式設定手順を実施したつもりでも、この初期設定ステップが抜けるケースが頻繁に報告されています。
解決方法
問題を修正するには、プロジェクトのグローバルCSSファイル(通常は src/index.css
)に次の3行を追記します:
@tailwind base;
@tailwind components;
@tailwind utilities;
具体的な手順:
プロジェクトのCSSファイルを開く
bash# 例(VSCodeで開く場合) code src/index.css
ファイルの先頭に以下を追記:
css@tailwind base; @tailwind components; @tailwind utilities;
shadcnの初期化コマンドを再実行:
bashnpx shadcn@latest init
これで設定ファイルが検出され、正常に処理が完了します。この方法はshadcn公式のGitHubイシューで確認された確実な解決策です。
技術的背景
Tailwindディレクティブの役割:
@tailwind
宣言は、Tailwindがベーススタイル・コンポーネント・ユーティリティクラスを生成する起点となります。これが存在しないと、Tailwindが有効化されずshadcnの依存関係エラーを引き起こします。なぜ公式手順で見逃しが起きるのか?
TailwindのVite公式ガイドではCSSファイルへの追記を明記していますが、Reactプロジェクトの多様性によりファイルパスを見逃すケースが発生します。特に既存プロジェクトへの導入時によく見られます。
追加確認事項
CSSファイルの場所:
index.css
がsrc/
ディレクトリ以外にある場合、パス調整が必要です。shadcnはデフォルトでsrc/index.css
を参照します。PostCSS設定の存在確認:
tailwind.config.js
とpostcss.config.js
がプロジェクトルートに生成されていることを確認してください:bashls -l tailwind.config.js postcss.config.js
依存パッケージのバージョン:
下記コマンドで最新バージョンを使用しているか確認:bashnpm list tailwindcss postcss autoprefixer