mens-blogsite

Men’s Blogsite

男性向け体験談を軸にした収益化可能なブログメディアのNext.jsアプリケーションです。現時点では基礎スキャフォールドに加えて、Prismaスキーマ・マイグレーション・シードデータ、NextAuthによるメール/パスワード認証の下準備を完了しています。

セットアップ手順

  1. 依存関係をインストール
    • npm install
  2. 環境変数を設定
    • .env.example.env にコピーし、DATABASE_URLAUTH_SECRETNEXTAUTH_URLSTRIPE_SECRET_KEYSTRIPE_WEBHOOK_SECRET を適切な値に変更
    • ストレージドライバを切り替える場合は STORAGE_DRIVERlocal または s3)とS3関連の環境変数を設定
    • ストレージドライバを切り替える場合は STORAGE_DRIVER (local / s3) と S3関連の環境変数を設定
  3. データベースを初期化
    • npm run db:generate — Prisma Client の生成
    • npm run db:push — スキーマをローカル開発DBへ反映 ※本番環境は npm run db:migrate
    • npm run db:seed — 初期データ投入(管理者アカウント、カテゴリ/タグ/記事10件)

実行コマンド

初期データ

認証スキャフォールド

Prisma構成

バックエンド構成

公開UI

管理UI

公開API

管理API

Stripe CLIによる検証例

  1. stripe login
  2. stripe listen --forward-to localhost:3000/api/stripe/webhook
  3. ログイン済みで /api/checkout を叩き、レスポンスURLをブラウザで開く
  4. 決済完了後、Webhook経由で Purchase レコードが作成されることを確認

Stripe / S3 運用メモ

検証チェックリスト(現在の進捗)

今後はPrismaを用いたAPI実装、NextAuthの登録フロー拡張、Stripe Checkout連携、管理画面UIの構築などを段階的に進めます。

E2Eテスト