🛡️
【Flutter】Firebaseの競合BaaS 6選
はじめに
今回の記事では、Flutterのバックエンドとして活用されているFirebaseの競合サービスを紹介する。実はFirebase以外にもFlutterのバックエンドを自動化できるBaaS(Backend as a Service、バックエンドを自動化できるサービス)はいくつか存在する。
Supabase
- Firebaseの代替BaaSの中では最も使われている。
- FirebaseがデータベースにNoSQLを採用している一方で、SupabaseはSQLを採用している。そのため、SQLの知識や経験が無駄にならない。
- Firebaseの場合、データの読み書きや削除に課金されるので、アプリケーションの開発の初期段階で思わぬコストが生じる。一方で、Supabaseではデータ量に応じて課金される。
- Firebaseとは違って完全なオープンソース。カスタマイズ性に優れる。
- 公式が数多くのサンプルを提供している。確認はこちら。
AWS Amplify
- クラウドベースで開発されたBaaS。
- ライブラリやUIコンポーネントの量が豊富。
- 基本的な機能はFirebaseとそこまで大差はないが、GraphQLの開発に対応している。(Firebaseは対応できない)
- GitHubに連携して開発・デプロイを進められる。
- Supabaseと同様にオープンソースなので、カスタマイズ性に優れる。
back4app
- ローコードツール寄りのBaaS。
- SQLに対応しており、かつ専用サーバやGraphQLへの対応などFirebaseが対応できない機能が豊富にある。
- 基本的な機能の大枠はそこまでFirebaseと大差がない
- 料金プランが細かく、5種類ある。(Firebaseは2種類)そのため、用途に応じて細かな設定がしやすい。
backandless
- ノーコードツール寄りのBaaS。
- データベースはSQLとNoSQL両方に対応している。
- Firebaseと比較すると機能は少なめだが、柔軟性に長ける。決定的な違いは専用サーバの有無。Firebaseは専用サーバを持たない。
- 料金プランが3種類ある。back4appと同様に定額の使用料が発生する。
Appwrite
- 紹介しているBaaSの中では唯一すべての機能が無料で使える。コスト低めでFlutterの開発を進めたいならオススメ。
- オープンソースで公開されている。カスタマイズ性が高い。数多くのプログラマーによってコントリビューションされているので、ソフトウェア自体としての信頼性が非常に高い。
- NoSQL・SQL両方の開発に対応している。
- 公式ドキュメントの説明が非常に丁寧だが、2022年11月時点で日本語の情報は少ない。
NHost
- GraphQLでバックエンドを自動化することに特化したBaaS。
- GraphQLでリアルタイム通信できるバックエンドを開発できる。
- データベースはPostgreSQLを採用。Supabaseと同様にSQLの知識や経験が無駄にならない。
- データに制約があるものの、back4appと同様に従量課金制ではないのでデータを使いすぎる心配がない。お試しでバックエンドを動かすことができる。
- 機能が特定の分野に特化しすぎているので、柔軟性に欠ける。(REST APIやNoSQLの開発はサポート外)
参考サイト
Discussion