Daftar Isi[Bersembunyi][Menunjukkan]
Backend-as-a-Service (BaaS) adalah paradigma layanan di mana pengembang mengalihdayakan komponen di belakang layar pengembangan web atau seluler sehingga mereka dapat fokus pada membangun dan memelihara frontend secara plug-and-play dan lepas dari beban menulis kode sisi server.
Perangkat lunak yang mendukung tugas sisi server seperti otentikasi, administrasi basis data, pembaruan waktu nyata, penyimpanan, hosting, dan peringatan push disediakan oleh platform BaaS (untuk aplikasi seluler).
Meskipun berbagai layanan backend pada dasarnya memberikan solusi yang sama, mereka menggunakan teknologi backend yang berbeda. Ini adalah faktor penentu bagi banyak pengembang ketika memilih layanan terbaik untuk proyek tertentu.
Pada artikel ini, kita akan membahas Supabase lebih dalam.
Apa itu supabase?
supabase adalah alternatif Firebase open-source yang menawarkan Backend sebagai Layanan untuk berbagai aplikasi. Sangat mudah untuk mengatur dan beroperasi dengan cepat dengan berbagai kerangka kerja. Supabase menagih dirinya sebagai pengganti sumber terbuka untuk Firebase.
Ini bermaksud untuk menguntungkan pengembang dalam menyiapkan backend mereka dengan cepat. “Bangun di akhir pekan, tumbuh menjadi jutaan,” kata Supabase.
Produk Supabase termasuk database Postgres dan layanan otentikasi, dengan penyimpanan dan layanan tanpa server (untuk logika backend) masih dalam pengerjaan. Semua alatnya sebagian besar gratis dan sumber terbuka. Basis data Postgres mencakup alat terkait basis data, seperti pemantauan waktu nyata atas modifikasi basis data dan antarmuka manajemen.
Selain itu, ia menyediakan API dan sintaks cepat yang sebanding dengan Firebase. Ini memungkinkan Anda untuk menangani tugas CRUD secara konsisten, memungkinkan Anda untuk fokus pada pembuatan daripada menulis ulang kode CRUD yang berulang.
Database Postgres adalah tabel yang memungkinkan Anda untuk menyimpan data yang terorganisir dan terhubung dengan cara yang sama seperti yang Anda lakukan di spreadsheet. Anehnya, ketika Anda membuat proyek, Anda dapat menggunakan spreadsheet yang ada sebagai database Postgres Anda.
Bagaimana cara kerja Supabase?
Supabase adalah kumpulan teknologi sumber gratis. Mereka membuat fitur Firebase dengan solusi open-source tingkat perusahaan. Jika alat dan komunitas tersedia di bawah MIT, Apache 2, atau lisensi terbuka yang sebanding, mereka akan menggunakan dan mendukungnya.
Jika alat tersebut belum ada, mereka membuatnya dan membuatnya tersedia sebagai open-source. Supabase bukan pemetaan Firebase 1:1. Tujuan mereka adalah untuk memberikan pengembang pengalaman pengembangan seperti Firebase menggunakan open source Teknologi.
Supabase adalah platform yang di-host. Anda dapat mendaftar dan mulai menggunakannya tanpa harus menginstal apa pun. Anda juga dapat menghosting sendiri dan membangun server Anda sendiri.
- PostgreSQL memiliki reputasi yang baik untuk stabilitas, ketangguhan fitur, dan kecepatan; Setelah lebih dari 30 tahun pengembangan aktif,
- Realtime adalah server Elixir yang memungkinkan Anda mendengarkan sisipan, pembaruan, dan penghapusan PostgreSQL menggunakan WebSockets. Supabase mendengarkan permintaan replikasi dari Postgres, mengonversi aliran byte replikasi ke JSON, dan kemudian menyiarkan JSON melalui WebSockets.
- PostgREST adalah server web yang mengubah database PostgreSQL Anda menjadi RESTful API.
- Penyimpanan menyediakan antarmuka RESTful untuk mengelola file yang disimpan di S3, dengan Postgres sebagai pengelola hak.
- Postgres-meta adalah RESTful API untuk mengelola Postgres yang memungkinkan Anda mengunduh tabel, menetapkan tanggung jawab, dan melakukan kueri, antara lain.
- GoTrue adalah API berbasis SWT yang memungkinkan Anda mengelola pengguna dan mengeluarkan token SWT.
- Kong adalah gateway API yang berjalan di cloud.
Memulai
1. Proyek
Di Supabase, sebuah proyek adalah wadah untuk semua database, pengguna otentikasi, aturan, tabel, dan penyimpanan file Anda.
Ada beberapa tempat untuk meng-host proyek Anda, dan administrator Supabase terus menambahkan situs baru untuk mengurangi latensi. Sebuah proyek membutuhkan waktu sekitar 2 menit untuk dibuat, jadi dapatkan kopi, duduk, dan bersantai.
2. Dasbor Proyek
Ketika proyek Anda selesai, Anda akan disajikan dengan dasbor yang mirip dengan yang ditunjukkan di bawah ini. Dasbor ini menunjukkan kepada Anda semua yang perlu Anda ketahui tentang proyek Anda, termasuk koneksi database, permintaan autentikasi, kapasitas penyimpanan, implementasi pustaka klien, dan banyak lagi.
3. Pembuat dan Editor Tabel
Basis data Supabase adalah PostgreSQL relasional dengan kemampuan waktu nyata dan kontrol akses kebijakan menggunakan Postgres RLS (Row Level Security). Pengembang dapat menggunakan dasbor Supabase untuk membuat Tabel dan menambahkan kolom dan properti. Pengembang dapat mengubah data langsung dari dasbor dengan Supabase.
4. Otentikasi
Google, GitHub, Facebook, Twitter, GitLab, dan Penyedia Otentikasi lainnya tersedia di Supabase. Ini dapat diaktifkan menggunakan Panel Otentikasi. Ini juga mendukung OTP Telepon dan Otentikasi Tautan Ajaib.
5. Penyimpanan
Supabase adalah sistem penyimpanan objek sumber terbuka yang dapat menangani semua jenis file dan memiliki skalabilitas bawaan. Ini memiliki API yang mudah digunakan yang memungkinkan aturan dan izin khusus. Integrasi CDN, serta transformasi dan pengoptimalan otomatis (mengubah ukuran dan mengompresi materi Anda), akan segera tersedia. Penyimpanan Supabase akan menjadi saingan berat penyimpanan Firebase dengan penyertaan kemampuan ini.
Apa yang bisa Anda bangun dengan Supabase? (Beberapa contoh)
1. Pembayaran berlangganan dengan Supabase + Stripe + Next.js.
Set starter lengkap untuk aplikasi SaaS berperforma tinggi.
- Supabase menyediakan administrasi dan otentikasi pengguna yang aman.
- Stripe Checkout dan integrasi portal pelanggan Stripe.
- Supabase menyediakan akses data yang kuat dan alat manajemen di atas PostgreSQL.
- Webhook strip memungkinkan sinkronisasi otomatis dari paket harga dan status langganan.
2. Simpan Tautan: Layanan bookmark sederhana dengan tag dan arsip
KeepLink adalah layanan bookmark dasar dengan tag dan arsip yang dibuat dengan Supabase dan Next.js. Itu tidak memiliki fitur berbagi sosial, tetapi Anda dapat meng-host instance Anda sendiri.
- Tandai bookmark baru secara otomatis berdasarkan tag yang ada.
- Pencarian teks lengkap untuk URL, Judul, Deskripsi, Tag, dan Konten Arsip berkat tumpukan Supabase, alias penandaan untuk database admin, dan akses API yang tenang sekarang dimungkinkan.
- Dengan metascraper, Anda dapat secara otomatis mengumpulkan judul dan deskripsi untuk halaman Anda. Anda juga dapat mengarsipkan halaman Anda dengan SinglePage dan Headless Chrome.
3. Aplikasi obrolan waktu nyata dengan Supabase + Bereaksi
- Untuk pengiriman pesan waktu nyata, Supabase (di atas PostgreSQL) digunakan.
- Front-end menggunakan React (CRA) + Vite
- Library UI yang digunakan adalah Chakra UI.
Fitur utama
Berikut adalah beberapa fitur Supabase:
- Dasbor/antarmuka pengguna untuk menyiapkan dan mengelola database Anda dalam waktu kurang dari satu menit.
- Untuk mendaftarkan pengguna dan memperbarui pembatasan akses di database Anda, terapkan autentikasi pengguna.
- API dan pustaka JavaScript.
- Pendengar basis data secara real-time.
- Fungsi (agak). Ini adalah prosedur tersimpan database yang dapat ditulis dalam SQL, JavaScript, Python, atau Java.
Pro
Supabase membedakan dirinya karena alasan berikut:
- Berbeda dengan Firebase, Anda dapat menjalankan kueri atau penelusuran teks yang rumit.
- Supabase menangani penskalaan untuk Anda (meskipun menggunakan database SQL)
- Migrasi data sederhana dengan Supabase karena memanfaatkan PostgreSQL, dan Anda dapat mengimpor data menggunakan file a.sql.
Kekurangan
Ada beberapa kelemahan mengadopsi Supabase. Mereka adalah sebagai berikut:
- Untuk menerima perubahan waktu nyata, Anda harus mengaktifkan fungsi replikasi untuk tabel.
- Saat pembaruan waktu nyata diaktifkan, kebijakan keamanan Supabase tidak berlaku.
- Fitur terbatas.
- SDK-nya hanya berfungsi dengan JavaScript (Dukungan untuk bahasa lain masih dalam versi beta)
Harga
1. Tingkat Gratis
- Basis data dengan ruang penyimpanan 500 MB dan panggilan API tak terbatas
- Otentikasi – Hingga 10,000 Pengguna
- Penyimpanan File – Penyimpanan hingga 1 GB, dengan batasan transfer bulanan hingga 2 GB.
2. Bayar sesuai pemakaian
- Database – $0.125 per GB penyimpanan, tanpa batasan panggilan API
- Otentikasi – Tidak Terbatas
- Penyimpanan File – Data disimpan $0.021 per GB dengan Transfer data $0.07/GB
Untuk informasi harga lebih lanjut, Anda dapat memeriksa situs web mereka.
Kesimpulan
Supabase adalah sumber terbuka terbaik alternatif untuk Firebase Google. Karena kekuatan PostgreSQL, ia menawarkan berbagai fitur luar biasa dan tidak memiliki batasan tipe data seperti sistem basis data waktu nyata lainnya.
Anda dapat membuat berbagai aplikasi menggunakan Supabase dan fitur unggulannya. Cobalah hari ini!
Marcelo
Dalam kasus SaaS B2B, apakah mungkin untuk memiliki 1 pengguna master per pelanggan dan N pengguna lain yang terkait dengan master ini hanya menangani data dari pelanggan ini?