saas-scaffolder について
saas-scaffolderは、認証、課金、マルチテナント機能を備えたNext.js SaaSアプリを作る開発者向けのスキルです。製品仕様からプロジェクト構成を生成し、検証を含む段階的な構築手順を提供します。
主な機能
- 01仕様からNext.jsアプリ構成を生成
- 02DrizzleのマルチテナントDBスキーマを作成
- 03OAuthやマジックリンクを含む認証設定
- 04StripeまたはLemon Squeezyの課金を追加
- 05検証付きの段階的な構築
活用シーン
- 01新しいサブスクリプションSaaSを開始
- 02認証と課金の基盤を用意
- 03ワークスペースや組織のテナントを設定
- 04環境変数例、スキーマ、APIルートを生成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ borghei/ claude-skills --skill saas-scaffolderインストール後、Claude Code で/saas-scaffolderを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/auth-billing-and-tenancy.mdproject-structure-and-schema.mdworkflow-and-quality.mdscripts/feature_flag_manager.pysaas_scaffolder.pytenant_config_validator.py詳細
SaaS スキャフォルダー
認証(NextAuth、Clerk、または Supabase Auth)、マルチテナント対応のデータベーススキーマ、請求連携(Stripe または Lemon Squeezy)、バリデーション付き API ルート、shadcn/ui を使ったダッシュボード UI、デプロイ設定を含む、本番環境に対応した完全な SaaS アプリケーションのひな形を生成します。プロダクト仕様から、30 分以内に動作するアプリケーションを生成します。
主な機能
- 仕様駆動のスキャフォールディング — 短いプロダクト仕様(認証/データベース/決済/テナント管理/機能)から、Next.js App Router + TypeScript + Tailwind + shadcn/ui の完全なファイルツリーを生成します。
- マルチテナント対応のデータベーススキーマ — ワークスペース(テナントの境界)、ユーザー、メンバー、OAuth アカウント、セッションを含む Drizzle ORM スキーマを、適切なインデックスとカスケードルールを設定して生成します。
- 認証 — Drizzle アダプター、OAuth(Google/GitHub)、マジックリンク(Resend)プロバイダー、ルート保護ミドルウェアを備えた NextAuth v5。
- Stripe 請求 — チェックアウトセッション、顧客ポータル、署名を検証する Webhook ハンドラーにより、サブスクリプションの状態を同期します。
- マルチテナントのパターン — ワークスペーススコープのクエリと、プランに基づく機能制限(free/pro/enterprise)。
- 段階的なビルドと品質基準 — 順序付けられた 5 つのスキャフォールディングフェーズ。それぞれに検証、注意点、ベストプラクティス、トラブルシューティング、成功基準が含まれます。
キーワード: SaaS、ひな形、スキャフォールディング、Next.js、認証、Stripe、請求、マルチテナント、サブスクリプション、スターターテンプレート、NextAuth、Drizzle ORM、shadcn/ui
使用する場面
- 新しい SaaS プロダクト、サブスクリプションアプリ、またはマルチテナントプラットフォームを始めるとき。
- プロダクト機能の構築前に、認証、請求、テナント管理のひな形をすばやく用意するとき。
- ロールベースのアクセス制御とプラン制限を備えた、ワークスペース/組織単位のテナント管理を追加するとき。
- Next.js スタック向けに、基本となる
.env.example、スキーマ、API ルートを生成するとき。
最初に確認する項目
スキャフォールディングを実行する前に、以下の入力内容を確認してください。不明な項目や曖昧な項目があれば、推測せずに質問してください。
- 認証プロバイダー — NextAuth/Clerk/Supabase Auth(
--auth。生成される認証設定とミドルウェアが変わります) - 決済プロバイダー — Stripe/Lemon Squeezy/なし(
--payments。請求機能と Webhook ハンドラーが決まります) - テナントモデル — ワークスペース/組織/シングルテナント(
--tenancy。データベーススキーマ全体とスコープ付きクエリの構成が変わります) - データベース — Neon/Supabase/その他の Postgres(
--db。Drizzle アダプターと接続設定が決まります)
停止ルール:出力に最も影響する 2~3 項目だけを質問してください。ユーザーが「とりあえず下書きを作って」と言った場合は、そのまま進め、成果物の冒頭に前提条件を記載してください。
ツール
| ツール | 用途 | コマンド |
|---|---|---|
saas_scaffolder.py | 本番環境に対応した SaaS プロジェクト構成(認証、請求、テナント管理)を生成します | python scripts/saas_scaffolder.py --name my-saas --auth nextauth --db neondb --payments stripe --tenancy workspace |
feature_flag_manager.py | JSON ストア上の機能フラグの CRUD と評価 | python scripts/feature_flag_manager.py evaluate --key dark-mode --environment production --plan pro |
tenant_config_validator.py | マルチテナント設定を検証し、テナントスコープの欠落や分離に関する問題がないかソースをスキャンします | python scripts/tenant_config_validator.py --config tenant_config.json --src ./app |
参照資料
タスクに合った参照資料を読み込んでください。このファイルは簡潔に保ち、必要に応じて詳細を確認してください。
- references/project-structure-and-schema.md — 入力仕様の形式、生成されるファイルツリー全体、マルチテナント対応の Drizzle スキーマ、
.env.exampleの変数が記載されています。仕様の定義、ファイルの配置、スキーマや環境設定の記述時に参照してください。 - references/auth-billing-and-tenancy.md — NextAuth の完全な設定、Stripe のチェックアウトとウェブフックのハンドラー、ルート保護ミドルウェア、ワークスペーススコープのクエリとプラン制限のコードが記載されています。認証、課金、テナント管理の設定時に参照してください。
- references/workflow-and-quality.md — フェーズごとの検証を含む、順序付けられた5つのスキャフォールディングフェーズ、よくある落とし穴、ベストプラクティス、トラブルシューティング表、成功基準が記載されています。スキャフォールディングの前とリリースの前に参照してください。
対象範囲と制限事項
このスキルの対象:
- Next.js App Router、TypeScript、Tailwind、shadcn/ui を使ったフルスタック SaaS のスキャフォールディング
- OAuth やマジックリンクプロバイダーを含む、NextAuth v5、Clerk、Supabase Auth による認証設定
- チェックアウト、ウェブフック、カスタマーポータルを含む Stripe と Lemon Squeezy の課金連携
- ロールベースのアクセス制御とプランベースの機能制限を備えた、マルチテナントパターン(ワークスペース/組織)
このスキルの対象外:
- 初期連携を超える継続的な Stripe 課金ロジック(従量課金、使用量ベースの価格設定、請求書のカスタマイズ) —
stripe-integration-expertを参照してください - 中核となるテナント管理モデルを超えるデータベーススキーマの設計判断(複雑なリレーショナルモデリング、インデックス戦略) —
database-schema-designerを参照してください - CI/CD パイプラインの設定、デプロイの自動化、インフラストラクチャのプロビジョニング —
ci-cd-pipeline-builderを参照してください - API 設計基準、バージョニング、OpenAPI 仕様の生成 —
api-design-reviewerを参照してください
連携ポイント
| スキル | 連携内容 | データフロー |
|---|---|---|
stripe-integration-expert | スキャフォールディング済みの Stripe 設定を、高度な課金パターン(従量課金、段階制、使用量ベース)で拡張します | スキャフォールダーは基本的な Stripe 設定とウェブフックハンドラーを出力します。Stripe エキスパートは価格モデルを改善し、請求書のカスタマイズを追加します |
database-schema-designer | 中核となるテナント管理テーブルを超える拡張スキーマを設計します | スキャフォールダーは users/workspaces/members の基本スキーマを提供します。スキーマデザイナーはドメイン固有のエンティティを追加し、インデックスを最適化します |
api-design-reviewer | 生成された API ルートの一貫性と基準への準拠を確認し、改善します | スキャフォールダーは初期 API ルートを生成します。レビュアーは命名、エラー処理、レスポンス形式を監査します |
ci-cd-pipeline-builder | スキャフォールディング済みプロジェクト用のデプロイパイプラインを作成します | スキャフォールダーはアプリケーションコードを出力します。パイプラインビルダーは GitHub Actions、プレビュー用デプロイ、本番リリース用ワークフローを追加します |
env-secrets-manager | 環境変数の設定を監査し、保護します | スキャフォールダーは .env.example を生成します。シークレットマネージャーはシークレットがハードコードされていないことを検証し、Vault との連携を推奨します |
observability-designer | スキャフォールディング済みアプリケーションにログ、トレース、監視を追加します | スキャフォールダーはアプリケーション構造を提供します。オブザーバビリティデザイナーは API ルート、ウェブフック、認証フローに計測機能を組み込みます |