Vendure CLI 開発ガイド¶
概要¶
Vendure CLI v3.5.0を使用した開発ワークフローとコマンドリファレンスです。
🚀 主要コマンド¶
スキーマ生成¶
# 全スキーマ生成 (Admin + Shop)
pnpm run schema:generate
# 個別生成
pnpm run schema:admin # Admin API スキーマ
pnpm run schema:shop # Shop API スキーマ
出力先: packages/shared-graphql/schema/
データベース管理¶
# マイグレーション実行
pnpm run db:migrate # 本番環境
pnpm run db:migrate:local # 開発環境
# マイグレーション生成
pnpm run migrate:generate # 新しいマイグレーション作成
pnpm run migrate:run # マイグレーション実行
# データ投入
pnpm run db:populate # サンプルデータ投入
🔧 開発ワークフロー¶
1. 初期セットアップ¶
# 依存関係インストール
pnpm install
# データベースマイグレーション
pnpm run db:migrate:local
# サンプルデータ投入
pnpm run db:populate
2. 開発サーバー起動¶
# 開発サーバー起動
pnpm run dev
# Dashboard開発サーバー(別ターミナル)
pnpm run dashboard:dev
3. スキーマ変更時¶
# スキーマ生成
pnpm run schema:generate
# 型定義更新
pnpm run codegen:full
🆕 v3.5.0 の新機能¶
新しいschemaコマンド¶
- サーバー起動不要: 設定ファイルから直接スキーマ生成
- Monorepo対応: 複数設定ファイルの自動検出
- 設定ファイル指定:
--configオプションで明示的指定
改善されたマイグレーション¶
- 設定統合: VendureConfigとの完全統合
- エラーハンドリング: より詳細なエラーメッセージ
- Monorepoサポート: 継承されたtsconfigの適切な処理
📁 プロジェクト構造¶
apps/vendure-server/
├── src/
│ ├── vendure-config.ts # メイン設定ファイル
│ └── migrations/ # データベースマイグレーション
├── package.json # 更新されたスクリプト
└── scripts/ # カスタムスクリプト(削除済み)
packages/shared-graphql/
└── schema/ # 生成されたスキーマファイル
├── admin.graphql
└── shop.graphql
🔍 トラブルシューティング¶
複数設定ファイルの警告¶
# 設定ファイルを明示的に指定
pnpm exec vendure schema --config src/vendure-config.ts
マイグレーションエラー¶
# 設定ファイルを指定してマイグレーション実行
pnpm exec vendure migrate --run --config src/vendure-config.ts
スキーマ生成エラー¶
# 設定ファイルを指定してスキーマ生成
pnpm exec vendure schema --api admin --config src/vendure-config.ts
📚 参考リンク¶
🎯 今後の改善¶
- CI/CDでの自動スキーマ生成
- IDE統合の最適化
- カスタムプラグインでのスキーマ拡張
- パフォーマンス監視の強化