Supabase là một giải pháp mã nguồn mở thay thế cho Firebase. Chúng tôi đang sử dụng các công cụ mã nguồn mở đạt chuẩn doanh nghiệp để xây dựng các chức năng mà Firebase cung cấp.
- Cơ sở dữ liệu Postgres tự quản lý. Tài liệu
- Xác thực và uỷ quyền. Tài liệu
- APIs tự động khởi tạo.
- Chức năng hàm.
- Kho lưu trữ. Tài liệu
- Bảng điều khiển
Để có tài liệu đầy đủ, hãy truy cập supabase.com/docs
Để biết cách Đóng góp, hãy truy cập Bắt đầu
- Diễn đàn cộng đồng. Tốt nhất cho: hỗ trợ xây dựng và thảo luận về các phương pháp tối ưu nhất dành cho cơ sở dữ liệu.
- Các vấn đề trên GitHub. Tốt nhất cho: các lỗi và "bugs" mà bạn gặp phải khi sử dụng Supabase.
- Hỗ trợ qua email. Tốt nhất cho: các vấn đề với cơ sở dữ liệu hoặc cơ sở hạ tầng của bạn.
- Discord. Tốt nhất cho: chia sẻ ứng dụng của bạn và dành thời gian với cộng đồng.
- Alpha: Chúng tôi đang thử nghiệm Supabase với một nhóm người dùng kín
- Public Alpha: Bất kỳ ai cũng có thể đăng ký tại app.supabase.io. Nhưng hãy bình tĩnh với chúng tôi, sẽ có một vài lỗi nhỏ.
- Public Beta: Đủ ổn định cho hầu hết các trường hợp sử dụng không dành cho môi trường doanh nghiệp (production)
- Public: Sẵn sàng cho môi trường doanh nghiệp (production)
Chúng tôi hiện đang ở giai đoạn Public Beta. Hãy đón xem mục "releases" của repo này để nhận thông báo về các bản cập nhật lớn.
Supabase là sự kết hợp của các công cụ mã nguồn mở. Các tính năng của Supabase được xây dựng dựa trên các sản phẩm đạt chuẩn doanh nghiệp và mã nguồn mở. Nếu các công cụ và cộng đồng hỗ trợ công cụ đó tồn tại, cùng với giấy phép MIT, Apache 2 hoặc giấy phép mở tương đương, chúng tôi sẽ sử dụng và hỗ trợ công cụ đó. Nếu công cụ không tồn tại, chúng tôi sẽ tự xây dựng và mở mã nguồn của nó. Supabase không phải là phiên bản 1 : 1 của Firebase. Mục đích của chúng tôi là cung cấp cho các nhà phát triển trải nghiệm tuyệt vời giống như sử dụng Firebase bằng cách sử dụng các công cụ nguồn mở.
Kiến trúc
Supabase là một nền tảng lưu trữ cơ sở dữ liệu. Bạn có thể đăng ký và bắt đầu sử dụng Supabase mà không cần cài đặt bất kỳ thứ gì. Bạn cũng có thể tự quản lý và phát triển cục bộ.
- PostgreSQL là một hệ thống cơ sở dữ liệu quan hệ đối tượng với hơn 30 năm phát triển tích cực, do đó có danh tiếng mạnh mẽ về độ tin cậy, tính năng mạnh mẽ và hiệu suất.
- Realtime là một máy chủ Elixir cho phép bạn lắng nghe các lệnh chèn, cập nhật và xóa của PostgreSQL bằng cách sử dụng websockets. Supabase lắng nghe chức năng sao chép có sẵn của Postgres, chuyển đổi luồng byte sao chép thành JSON, sau đó phát JSON qua các cổng websockets được uỷ quyền.
- PostgREST là một máy chủ web có khả năng biến cơ sở dữ liệu PostgreSQL của bạn thành một hệ thống REST API một cách trực tiếp.
- Storage cung cấp giao diện RESTful để quản lý các tệp được lưu trữ trong S3, sử dụng Postgres để quản lý quyền.
- postgres-meta là một API RESTful để quản lý Postgres của bạn, cho phép bạn tìm nạp bảng, thêm vai trò và chạy truy vấn, v.v.
- GoTrue là một API dựa trên SWT để quản lý người dùng và phát hành mã token SWT.
- Kong là một cổng API trên đám mây.
Phương pháp tiếp cận của chúng tôi cho các thư viện hỗ trợ là mô-đun. Mỗi thư viện con là một triển khai độc lập cho một hệ thống bên ngoài. Đây là một trong những cách chúng tôi hỗ trợ các công cụ hiện có.
Ngôn ngữ | Thư viện | Thư viện tính năng (được tích hợp vào thư viện của Supabase) | |||
---|---|---|---|---|---|
Supabase | PostgREST | GoTrue | Realtime | Storage | |
⚡️ Chính thức ⚡️ | |||||
JavaScript (TypeScript) | supabase-js | postgrest-js | gotrue-js | realtime-js | storage-js |
💚 Cộng đồng 💚 | |||||
C# | supabase-csharp | postgrest-csharp | gotrue-csharp | realtime-csharp | storage-csharp |
Dart (Flutter) | supabase-dart | postgrest-dart | gotrue-dart | realtime-dart | storage-dart |
Go | - | postgrest-go | - | - | - |
Java | - | - | gotrue-java | - | - |
Kotlin | - | postgrest-kt | gotrue-kt | - | - |
Python | supabase-py | postgrest-py | gotrue-py | realtime-py | - |
Ruby | supabase-rb | postgrest-rb | - | - | - |
Rust | - | postgrest-rs | - | - | - |
Swift | supabase-swift | postgrest-swift | gotrue-swift | realtime-swift | storage-swift |