ユーザー認証とデータベース
前提条件
新機能の開発を始める前に、以下の前提条件を満たしていることを確認してください:
アーキテクチャ概要
lib/auth/
├── auth-client.ts # Better-authクライアント定義
├── index.ts # Better-authコア設定
└── server.ts # サーバーサイド共通メソッド、含む:セッション取得、現在のユーザーが管理者かどうかチェック
lib/db/
├── migrations/ # `npm run db:generate`コマンドで生成されたマイグレーションファイル
├── seed/ # ボイラープレートから組み込まれたシードデータとスクリプト
├── config.ts # データベースパラメータ設定、自動処理
├── index.ts # Drizzle ORM設定エントリーポイント
└── schema.ts # データベーステーブル定義
components/auth/
├── AuthGuard.tsx # ルートガード、ログイン必須アクセスと管理者限定ルートを保護
├── GoogleOneTap.tsx # Google One Tapログインスクリプト
├── LoginDialog.tsx # ログインモーダルダイアログ
└── LoginForm.tsx # ログインフォーム
actions/
├── users/ # ユーザー関連データベース操作
├── blogs/ # ブログ関連データベース操作
└── .../ # その他
以下の文書では、現在のアーキテクチャについてさらに詳しく説明します。