supabase
Supabase是基于Postgres的开源开发平台,提供托管数据库、认证、自动生成接口等能力,可用于快速搭建网页、移动及AI类应用。
这个项目值得继续研究吗?
Supabase是基于Postgres的开源开发平台,提供托管数据库、认证、自动生成接口等能力,可用于快速搭建网页、移动及AI类应用。
- 解决什么问题
- 企业开发应用时,通常需要单独搭建数据库、开发用户认证体系、编写接口、搭建存储服务,流程繁琐研发成本高,使用闭源后端服务还会面临数据不自主、后续扩容成本不可控的问题。
- 适合什么团队
- 适合需要快速搭建应用后端的互联网业务团队、AI应用开发团队,以及不想采购闭源BaaS服务、希望掌握数据自主权的研发团队。
- 使用前注意
- 官方提供直接可用的托管版本,若选择自托管需要具备Postgres相关运维能力;部分编程语言的客户端由社区维护,功能支持进度与官方版本存在差异。
本页用于缩短初步筛选时间,不构成技术、采购或法律结论。 正式使用前请在真实业务数据上验证,并以官方说明与许可证为准。
从官方资料看清能力、部署与采用边界
以下内容依据项目公开 README 或模型卡翻译整理,代码、命令和产品名保持原样。
项目定位
Supabase是基于Postgres(PostgreSQL,一款成熟的开源关系型数据库)的开源开发平台,核心目标是采用企业级开源工具,提供类似Firebase的低门槛后端开发体验,并非对Firebase的1:1功能复刻。平台所有依赖的组件均采用MIT、Apache-2.0等同级宽松开源许可,现有工具不满足需求时会自行开发并开源。
核心能力
Supabase提供从数据存储到应用开发的全链路后端能力,核心包含以下模块:
Supabase Dashboard
- 托管Postgres数据库:底层采用有30多年开发历史的Postgres,可靠性和性能经过广泛验证。
- 认证与授权:基于JWT的身份认证体系,支持用户注册、登录、会话全流程管理,可灵活配置权限规则。
- 自动生成接口:无需手动编写代码,即可自动生成REST、GraphQL接口,同时支持数据变更实时订阅,前端可通过websocket实时接收数据库的增删改操作通知。
- 函数能力:支持数据库函数和边缘函数,可按需运行自定义业务逻辑。
- 文件存储:兼容S3的文件存储服务,权限管理基于Postgres实现,可灵活控制文件的访问权限。
- AI与向量工具包:内置向量存储支持,可用于搭建检索增强生成(Retrieval Augmented Generation,RAG,一种为大模型补充外部知识库的技术)类AI应用。
- 可视化仪表盘:提供可视化管理界面,可直接操作数据库、配置权限、查看运行数据。
典型使用方式
Supabase支持两种使用路径:
常见使用场景包括移动应用后端、网页应用后端、AI知识库应用、实时协作类工具等。
- 直接使用官方托管服务:注册账号后即可开通服务,无需部署任何组件,开箱即用,适合快速启动项目。
- 本地开发+自部署:可通过官方提供的本地开发工具在本地完成功能开发测试后,自行部署到自有服务器,适合对数据部署位置有要求的业务。
架构与部署说明
Supabase底层由多个开源组件组合而成,核心组件包括Postgres、处理实时推送的Realtime、生成REST接口的PostgREST、处理认证的GoTrue、存储服务、GraphQL扩展等,整体架构如下: Architecture 部署可选两种模式:
当前项目处于活跃维护状态,未归档,使用过程中遇到bug可通过GitHub Issues提交反馈,开发问题可通过社区论坛咨询。
- 官方SaaS托管:由Supabase官方负责所有组件的运维、升级、故障处理,企业无需投入运维人力,开通即可使用。
- 自托管:可按照官方文档将整套系统部署到自有服务器,需要企业自行负责服务器维护、Postgres运维、组件版本升级等工作。
客户端支持
Supabase的客户端采用模块化设计,各功能模块对应独立的子库,可单独使用也可使用集成的全量客户端。 官方提供全功能支持的客户端语言包括JavaScript/TypeScript、Flutter、Swift、Python,覆盖Web、移动端、后端开发的主流场景。 C#、Go、Java等语言的客户端由社区维护,部分功能的支持进度可能滞后于官方版本,选型时可提前确认对应语言的客户端功能覆盖情况。
许可证与采用建议
Supabase采用Apache-2.0许可证,支持免费商用、二次修改,二次开发的代码无需开源。 如果是快速验证业务MVP、团队无多余运维人力,建议优先选用官方托管版本,可大幅降低后端开发成本;如果业务有严格的数据合规要求、需要将数据存放在自有服务器,可评估自身Postgres运维能力后选择自托管部署。
官方资料与来源
- ai
- alternative
- auth
- database
- deno
- embeddings
- example
- firebase
- nextjs
- oauth2
- pgvector
- postgis




核对上游原始说明节选
The Postgres development platform. Supabase gives you a dedicated Postgres database to build your web, mobile, and AI applications.
Supabase
Supabase is the Postgres development platform. We're building the features of Firebase using enterprise-grade open source tools.
- [x] Hosted Postgres Database. Docs
- [x] Authentication and Authorization. Docs
- [x] Auto-generated APIs.
- [x] REST. Docs
- [x] GraphQL. Docs
- [x] Realtime subscriptions. Docs
- [x] Functions.
- [x] Database Functions. Docs
- [x] Edge Functions Docs
- [x] File Storage. Docs
- [x] AI + Vector/Embeddings Toolkit. Docs
- [x] Dashboard
Supabase Dashboard
Watch "releases" of this repo to get notified of major updates.
Documentation
For full documentation, visit supabase.com/docs
To see how to Contribute, visit Getting Started
Community & Support
- Community Forum. Best for: help with building, discussion about database best practices.
- GitHub Issues. Best for: bugs and errors you encounter using Supabase.
- Email Support. Best for: problems with your database or infrastructure.
- Discord. Best for: sharing your applications and hanging out with the community.
How it works
Supabase is a combination of open source tools. We’re building the features of Firebase using enterprise-grade, open source products. If the tools and communities exist, with an MIT, Apache 2, or equivalent open license, we will use and support that tool. If the tool doesn't exist, we build and open source it ourselves. Supabase is not a 1-to-1 mapping of Firebase. Our aim is to give developers a Firebase-like developer experience using open source tools.
Architecture
Supabase is a hosted platform. You can sign up and start using Supabase without installing anything. You can also self-host and develop locally.
Architecture
- Postgres is an object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.
- Realtime is an Elixir server that allows you to listen to PostgreSQL inserts, updates, and deletes using websockets. Realtime polls Postgres' built-in replication functionality for database changes, converts changes to JSON, then broadcasts the JSON over websockets to authorized clients.
- PostgREST is a web server that turns your PostgreSQL database directly into a RESTful API.
- GoTrue is a JWT-based authentication API that simplifies user sign-ups, logins, and session management in your applications.
- Storage a RESTful API for managing files in S3, with Postgres handling permissions.
- pggraphql a PostgreSQL extension that exposes a GraphQL API.
- postgres-meta is a RESTful API for managing your Postgres, allowing you to fetch tables, add roles, and run queries, etc.
- Envoy is a cloud-native, high-performance edge and service proxy.
Client libraries
Our approach for client libraries is modular. Each sub-library is a standalone implementation for a single external system. This is one of the ways we support existing tools.
END ROW -->