---
### 它是如何運作的
Supabase 是一個開源工具的组合。我們正在使用企業級的開源產品來構建 Firebase 的功能。如果這些工具和社群存在,並且有 MIT、Apache 2 或同等的開放許可,我們將使用並支持該工具。如果該工具不存在,我們就自己建立並開放原始碼。Supabase 不是 Firebase 的 1 對 1 映射。我們的目標是使用開源工具為開發者提供類似 Firebase 的開發者體驗。
**架構**
Supabase 是一個[托管平台](https://supabase.com/dashboard)。你可以註冊並開始使用 Supabase,無需安裝任何東西。
你也可以[自行托管](https://supabase.com/docs/guides/hosting/overview)和[本地開發](https://supabase.com/docs/guides/local-development)。

- [PostgreSQL](https://www.postgresql.org/)是一個物件關係型資料庫系統,經過 30 多年的積極開發,它在可靠性、功能穩健性和性能方面赢得了良好的聲譽。
- [Realtime](https://github.com/supabase/realtime)是一個 Elixir 服務器,允許你使用 websockets 監聽 PostgreSQL 的插入、更新和刪除。Realtime 對 Postgres 内置的複製功能進行投票,以了解資料庫的數位化,將變化轉换為 JSON,然后通過 websockets 將 JSON 廣播邊授權客户。
- [PostgREST](http://postgrest.org/)是一個網路服務器,它把你的 PostgreSQL 資料庫直接變成一個 RESTful API。
- [pg_graphql](http://github.com/supabase/pg_graphql/)是一個 PostgreSQL 邊擴展,暴露了一個 GraphQL API。
- [Storage](https://github.com/supabase/storage-api) 提供了一個 RESTful 接口來管理存儲在 S3 中的文件,使用 Postgres 來管理權限。
- [postgres-meta](https://github.com/supabase/postgres-meta) 是一個用於管理你的 Postgres 的 RESTful API,允許你獲取表、添加角色和運行查詢等。
- [GoTrue](https://github.com/netlify/gotrue) 是一個基於 SWT 的 API,用於管理用户和發行 SWT 令牌。
- [Kong](https://github.com/Kong/kong)是一個雲原生 API 網關。
#### 客户端庫
我們對客户端庫的做法是模塊化的。每一個子庫都是一個獨立的實現,用於單一的外部系统。這是我們支持現有工具的方法之一。
| 語言 | 客户端 | 特徵-客户端(捆绑在Supabase客户端中) | ||||
|---|---|---|---|---|---|---|
| Supabase | PostgREST | GoTrue | Realtime | Storage | Functions | ⚡️ 官方⚡️ |
| JavaScript (TypeScript) | supabase-js | postgrest-js | gotrue-js | realtime-js | storage-js | functions-js |
| Flutter | supabase-flutter | postgrest-dart | gotrue-dart | realtime-dart | storage-dart | functions-dart | 💚社群 💚 |
| C# | supabase-csharp | postgrest-csharp | gotrue-csharp | realtime-csharp | storage-csharp | functions-csharp |
| Go | - | postgrest-go | gotrue-go | - | storage-go | functions-go |
| Java | - | - | gotrue-java | - | storage-java | - |
| Kotlin | supabase-kt | postgrest-kt | gotrue-kt | realtime-kt | storage-kt | functions-kt |
| Python | supabase-py | postgrest-py | gotrue-py | realtime-py | storage-py | functions-py |
| Ruby | supabase-rb | postgrest-rb | - | - | - | - |
| Rust | - | postgrest-rs | - | - | - | - |
| Swift | supabase-swift | postgrest-swift | gotrue-swift | realtime-swift | storage-swift | functions-swift |
| Godot Engine (GDScript) | supabase-gdscript | postgrest-gdscript | gotrue-gdscript | realtime-gdscript | storage-gdscript | functions-gdscript |