Supabase
开源的后端即服务(BaaS)平台,提供了一套完善的功能,包括数据库、认证、存储和实时功能,开发者可以用它来构建全栈应用, 不需要后端, 适合构建MVP项目
特点
- 基于PostgreSQL
- 使用 PostgreSQL 作为其数据库引擎
- 内置的认证系统
- 支持用户注册、登录、密码重置、社交登录等功能。它支持 OAuth2、Magic Links(基于邮件的免密登录)、和第三方服务如 Google、GitHub 等登录方式
- 实时功能
- 支持实时数据库订阅,可以订阅特定表的更改,当数据发生变化时,实时推送更新
- 存储
- 提供一个文件存储系统,可以轻松地上传和管理文件。它允许你上传文件并与数据库中的数据关联,同时支持存储大型文件,如图片、视频等
- 自动化 API 生成
- 一旦你设置好数据库模式,会自动为你生成 RESTful API,你不需要手动编写任何后端代码。这大大简化了开发过程,特别适合快速构建 MVP(最小可行产品)
- 开源
- 可以自由地部署它在自己的服务器上。虽然它也提供了托管服务,但如果你需要完全的控制权,自己托管是一个不错的选择。
- SDK和客户端支持
- 提供了多种客户端库,支持 JavaScript、TypeScript、Dart、Flutter、Go 等语言,便于与不同类型的应用进行集成
主要组件
- Database
- 基于 PostgreSQL 提供的关系型数据库服务,支持数据模型、SQL 查询、外键约束等
- Auth
- 提供用户认证功能,支持邮箱/密码登录、社交登录等
- Storage
- 文件存储服务,允许你上传和管理用户生成的内容(例如图片、视频等)
- Realtime
- 提供实时数据更新和事件驱动的功能,支持实时订阅数据库表的变化
- Functions
- 提供无服务器函数功能,可以编写自定义逻辑并将其部署到 Supabase 环境中