
Supabase とは?
バックエンド機能をまとめて提供するサービス
Supabase(スーパベ―ス、スパベース)はPostgres開発プラットフォームです。Supabase は データベース、認証、API、ストレージ、リアルタイム更新 など、アプリ開発で必要なバックエンド機能をひとまとめに提供する BaaS(Backend as a Service)プラットフォームです。数百万ユーザーまでスケールできます。
- データベース:フルマネージドな PostgreSQL(リレーショナルDB)
- 認証(Auth):ユーザーのログイン・管理機能
- API:テーブル定義から即時に REST API を生成
- リアルタイム:リアルタイム更新・購読機能(WebSockets ベース)
- ストレージ:ファイルやメディアの保存・配信
- Edge Functions:サーバーレス関数(カスタムコードの実行)
- Vector / ML 機能:機械学習モデルとの統合(最新機能)
バックエンド構築の手間を大幅に削減
従来、サーバーやデータベースを自分で構築・運用しなければならなかった部分を、Supabase が すぐ使える状態で提供します。
SQL(PostgreSQL)ベースで柔軟性が高い
Firebase のような NoSQL とは異なり、SQL クエリやリレーショナルデータの高度な操作が可能です。
オープンソースで柔軟に自ホスティング可能
Supabase はオープンソースプロジェクトとして開発されており、自分でサーバー上にインストールして 完全にコントロールすることもできます。
料金
月間アクティブユーザー数5万人までは、条件を満たす場合に無料で利用することができます。

公式ページ:Supabase Price
https://supabase.com/pricing
セットアップ方法
STEP 1:アカウント作成 & プロジェクト作成
公式サイト https://supabase.com/ にアクセスして「Start your project」からサインアップ

お好みの方法でログインします。今回はGitHubアカウントでログインします。
GitとGitHubの違いについては、こちらで記事にしています。


会社名またはチーム名、タイプ、プランを選択します。今回はフリープランを選択します。

新規プロジェクト作成(プロジェクト名・DBパスワード設定・リージョンなどを設定します)

Authentication>Sign in / Providers>

上部:User Signups(サインアップ制御)
- Allow new users to sign up
- ON → 誰でも新規登録できる
- OFF → 既存ユーザーのみ(招待制に近い)
- Allow manual linking
- 複数ログインを1ユーザーに紐づけ可能にする機能
- Googleログインした人が後からEmailログインも使う
- 複数ログインを1ユーザーに紐づけ可能にする機能
- Allow anonymous sign-ins
- 匿名ログイン(IDなしの一時ユーザー)
- Confirm email
- メール確認必須
- ON推奨(スパム防止)
- メール確認必須
下部:Auth Providers一覧
ログイン方法を追加することができます。E-mail認証はデフォルトでONになっています。その他は任意でせっていしてください(今回は設定しません)。
作成すると「Project URL」と「anon public key」が発行されます(後で使います)
Googleログイン認証を追加
Googleの認証を有効化します。

Client IDsとClient Secret (for OAuth)の値が必要なので、Googleから取得します。
Callback URL(for OAuth)の値は後程Googleの設定で使用します。

Client IDsとClient Secret (for OAuth)の取得方法については、こちらの記事で解説しています↓
Client IDsとClient Secret (for OAuth)を入力します。

まとめ
- Supabase はアプリのバックエンド機能をまとめて提供する オープンソースのクラウドプラットフォーム。
- PostgreSQL をベースに、認証、リアルタイム、ストレージ、API など 多彩な機能を持つ。
- Firebase と同じように使えるが、SQL の柔軟性 や オープンソースならではの拡張性 が特徴。
参考
- Supabase 公式サイト:
https://supabase.com/ - Supabase ドキュメント:
https://supabase.com/docs
コメント