データベース・認証・ストレージ・APIが全部入り。Firebaseの強力なオープンソース代替として注目される次世代バックエンドを解説。
Supabaseは、データベース・ユーザー認証・ファイルストレージ・リアルタイム通信・APIが全てひとつにまとまったバックエンドサービス(BaaS)です。2020年にアメリカで設立され、オープンソースで開発されています。
Googleの「Firebase」と似た位置づけですが、SupabaseはPostgreSQL(本格的なリレーショナルDB)を採用している点が大きな違いです。
🔑 一言でいうと:「バックエンドを自分で構築しなくても、データの保存・ユーザー管理・API・認証が全部使えるサービス」です。フロントエンドエンジニアが一人でフルスタックアプリを作れるようになります。
Supabaseは1つのサービスで以下の機能を全て提供します。それぞれ単体のサービスとして独立して使うこともできます。
本格的なリレーショナルデータベース。GUIのTable Editorでノーコードでもテーブル作成・データ操作できる。
メール/パスワード・Google・GitHub・Twitter等のSNSログイン、電話番号認証が全て無料で使える。
画像・動画・PDF等のファイルを保存できるS3互換ストレージ。アクセス権限の細かな設定も可能。
データベースの変更をリアルタイムで検知してブラウザに通知。チャットアプリや共同編集に最適。
テーブルを作るだけでRESTful API・GraphQLが自動生成される。バックエンドコードなしでデータ操作可能。
Deno(TypeScript)でサーバーレス関数を書ける。StripeのWebhook処理・メール送信・外部API連携に便利。
「自分のデータは自分だけが読める」のようなセキュリティルールをSQLで設定できる強力な機能。
pgvector拡張でベクトルデータを保存・検索できる。ChatGPT等を使ったAIアプリ開発に対応。
「Firebase(Google)と何が違うの?」という疑問を持つ方は多いです。どちらもBaaSですが、いくつか重要な違いがあります。
| 項目 | 🟢 Supabase | 🔶 Firebase |
|---|---|---|
| データベースの種類 | PostgreSQL(SQL) | Firestore(NoSQL) |
| SQLが使える | ✓ フルサポート | ✗ 使えない |
| オープンソース | ✓ 完全公開 | ✗ クローズド |
| 自前ホスティング | ✓ セルフホスト可 | ✗ Googleのみ |
| 複雑なクエリ | ✓ JOINなど全対応 | △ 制限あり |
| リアルタイム機能 | ✓ あり | ✓ 非常に強力 |
| 無料プランの制限 | 比較的緩め | やや厳しめ |
| ベンダーロックイン | 低い(移行しやすい) | 高い |
💡 選び方のポイント:リレーショナルデータ・SQLに慣れているならSupabase、モバイルアプリでリアルタイムを最優先するならFirebaseが向いています。
JavaScript(TypeScript)からSupabaseを使う例を紹介します。直感的で読みやすいのが特徴です。
⚠️ 注意:本番環境では必ず「Row Level Security(RLS)」を有効にしてください。無効のままだと誰でも全データにアクセスできる状態になります。
Supabaseは学習・個人プロジェクトに十分な無料プランがあります。ただし、無料プランは7日間アクティビティがないとプロジェクトが一時停止されます(簡単に再起動可能)。
| プラン | 料金 | 主な制限・特徴 |
|---|---|---|
| Free | $0 | DB 500MB・ストレージ 1GB・帯域 5GB/月・Edge Functions 500,000回/月。学習・個人開発に最適。2プロジェクトまで。 |
| Pro | $25/月 | DB 8GB・ストレージ 100GB・帯域 250GB/月。本番運用向け。一時停止なし。チーム機能あり。 |
| Team | $599/月〜 | 大規模チーム向け。SOC2対応・高度なセキュリティ・SLA保証。 |
| Enterprise | 要問い合わせ | 専用サポート・カスタム制限・オンプレミス対応も相談可能。 |
この3つを組み合わせると、サーバーなし・ほぼ無料でフルスタックWebアプリを作れます。多くのスタートアップや個人開発者が採用しているモダンな構成です。
コードの保存・バージョン管理・チームコラボ。全ての起点。
フロントエンドの自動デプロイ・公開・CDN。GitHubとシームレスに連携。
データベース・認証・API・ストレージ。バックエンドを全て担当。
🚀 実際の流れ:① Supabaseでデータベース設計 → ② Next.jsでフロント開発 → ③ GitHubにpush → ④ VercelがGitHubを監視して自動デプロイ → ⑤ 完成!全て無料でできます。
https://supabase.com — アカウント作成・プロジェクト作成はここから
https://supabase.com/docs — JavaScript/Python/Flutter等の公式ガイド
https://github.com/supabase/supabase — オープンソースで開発中。スターも多い!
https://supabase.com/docs/guides/getting-started — Next.js/Reactとの組み合わせガイド
Supabaseはデータベース・認証・ストレージ・API・リアルタイムが全部入りのオープンソースBaaS
本格的なPostgreSQL(SQL)を使えるため、Firebaseより複雑なデータ設計に向いている
GitHub × Vercel × Supabaseの組み合わせで、ほぼ無料でフルスタックアプリが作れる
JavaScriptクライアントが直感的で初心者にも使いやすい。まず無料プランで試してみよう
本番運用では必ずRow Level Security(RLS)を設定すること!セキュリティの要