6週目:データベース連携

ゴール

  • BaaS(Supabase または Firebase など)を導入し、認証+CRUDを一通り体験する
  • 「ユーザーごとにデータを保存する」アプリ構造を理解する

Day1:BaaSの選定とプロジェクト作成

  • SupabaseまたはFirebaseいずれかを選び、プロジェクトを作成する
  • 到達条件:管理画面にログインし、プロジェクトが作成されている

Day2:認証機能の実装

  • メール認証など、BaaSの認証機能を使ってログイン・ログアウトを実装する
  • 到達条件:自分でアカウントを作り、ログイン/ログアウトできる

Day3:データ設計

  • 保存したいデータ(例:メモのタイトル・本文・作成者)のテーブル/コレクションを設計する
  • 到達条件:カラム名と型を決め、テーブル/コレクションを作成した

Day4:CRUD実装

  • データの作成・読込・更新・削除(CRUD)をひとつずつ実装する
  • 到達条件:画面上でデータの追加・編集・削除ができる

Day5:ユーザーごとのデータ分離の確認

  • ログインユーザーごとに自分のデータだけが見える状態にする
  • 到達条件:別アカウントでログインすると別のデータが表示されることを確認した

進め方(AIの使い方)

  • 「Supabaseでメール認証ログインを作りたい。Next.js(App Router)前提で最小構成の手順を」
  • 「CRUDで必要なテーブル設計(カラム名と型)を提案して」
  • 「ユーザーごとにデータを分離する設計(RLSなど)を初心者向けに説明して」

よくある詰まりどころと回復手順

  • ログインできない → APIキー・環境変数の設定ミスを確認する(エラー文をAIに貼る)
  • 他人のデータが見えてしまう → 権限設定(RLSやセキュリティルール)を見直す。AIに「このルールで本当に他人のデータを防げるか」をレビューしてもらう
  • CRUDのどこかだけ動かない → 作成・読込・更新・削除を1つずつ個別にテストして、どこで止まっているか特定する

自己チェックリスト

進捗チェック

進捗を記録するには ログイン してください。

成果物

  • 認証付きメモアプリ
  • データが保存・編集・削除できるデモ

参考

  • 利用するBaaS(Supabase / Firebase など)の公式ドキュメント