supabase / supabase

supabase/supabase

open_in_new前往仓库

Postgres 开发平台。Supabase 为您提供专用的 Postgres 数据库,用于构建 Web、移动和 AI 应用。

项目概览

项目概述

Supabase 是一个开源的 Postgres 开发平台,旨在提供类似 Firebase 的开发者体验,但基于企业级开源工具构建。它提供托管数据库、身份验证、自动生成 API、实时订阅、边缘函数、文件存储以及 AI 工具包。该项目使用 TypeScript 编写,采用 Apache-2.0 许可证。

核心功能

  • 托管 Postgres 数据库:提供专用的 Postgres 数据库,支持扩展如 PostGIS 和 pgvector。
  • 身份验证与授权:内置 JWT 认证,支持多种登录方式。
  • 自动生成 API:包括 REST、GraphQL 和实时订阅。
  • 边缘函数:支持在边缘运行无服务器函数。
  • 文件存储:提供 S3 兼容的文件存储 API。
  • AI 工具包:支持向量嵌入和 AI 应用开发。
  • 仪表盘:提供可视化管理界面。

适用与不适用场景

适用场景:

  • 需要快速搭建后端服务的 Web、移动和 AI 应用。
  • 需要实时数据同步的应用。
  • 需要向量搜索的 AI 应用。
  • 希望使用 Postgres 但不想管理基础设施的团队。

不适用场景:

  • 需要完全自定义数据库引擎的场景。
  • 对数据主权有严格要求的场景(除非自托管)。
  • 需要非 Postgres 数据库的场景。

技术架构与依赖

Supabase 由多个开源组件组成:

  • Postgres:核心数据库。
  • Realtime:基于 Elixir 的实时服务器,通过 WebSocket 广播数据库变更。
  • PostgREST:将 Postgres 转换为 RESTful API。
  • GoTrue:JWT 认证服务。
  • Storage:文件存储 API。
  • pg_graphql:GraphQL 扩展。
  • postgres-meta:管理 Postgres 的 REST API。
  • Envoy:边缘代理。

客户端库支持多种语言,包括 JavaScript/TypeScript、Flutter、Swift、Python 等。

安装与快速开始

仓库资料未提供具体的安装命令。通常,您可以通过以下方式开始:

  • 访问 Supabase 仪表盘 注册托管服务。
  • 或按照官方文档进行本地开发和自托管。

典型使用方法

仓库资料未提供具体代码示例。一般使用流程包括:

  1. 创建 Supabase 项目。
  2. 使用客户端库连接数据库。
  3. 调用自动生成的 API 进行数据操作。
  4. 配置身份验证和实时订阅。

配置与部署要点

  • 托管平台:无需安装,直接使用。
  • 自托管:需要配置 Postgres、Realtime、PostgREST 等组件。
  • 本地开发:使用官方 CLI 工具。

限制、风险与许可证

  • 许可证:Apache-2.0。
  • 限制:托管服务可能有使用限制,自托管需要自行维护。
  • 风险:依赖多个开源组件,版本更新可能带来兼容性问题。

官方链接

信息来源和分析时间

  • 信息来源:GitHub 仓库 README、CONTRIBUTING.md、最新发布信息。
  • 分析时间:2026年8月7日。