Cuprins[Ascunde][Spectacol]
Backend-as-a-Service (BaaS) este o paradigmă de servicii în care dezvoltatorii externalizează componentele din culise ale dezvoltării web sau mobile, astfel încât să se poată concentra pe construirea și menținerea frontend-ului pe o bază plug-and-play și scăpa de povara scrierii codului pe server.
Software-ul care acceptă sarcini de la nivelul serverului, cum ar fi autentificarea, administrarea bazei de date, actualizarea în timp real, stocarea, găzduirea și alertele push este furnizat de platformele BaaS (pentru aplicații mobile).
Chiar dacă diverse servicii backend oferă în esență aceeași soluție, ele folosesc tehnologii backend distincte. Acesta este un factor decisiv pentru mulți dezvoltatori atunci când aleg cel mai bun serviciu pentru un anumit proiect.
În acest articol, ne vom aprofunda în Supabase.
Ce este Supabaza?
Supabaza este o alternativă Firebase open-source care oferă Backend ca serviciu pentru o varietate de aplicații. Este foarte simplu de configurat și funcționează rapid cu o varietate de cadre. Supabase se autoproclamă ca un înlocuitor open-source pentru Firebase.
Intenționează să beneficieze dezvoltatorii prin configurarea rapidă a backend-ului. „Construiți într-un weekend, creșteți la milioane”, spune Supabase.
Produsele Supabase includ o bază de date Postgres și un serviciu de autentificare, cu servicii de stocare și serverless (pentru logica backend) încă în lucru. Toate instrumentele sale sunt în mare parte gratuite și open-source. Baza de date Postgres include instrumente legate de bazele de date, cum ar fi monitorizarea în timp real a modificărilor bazei de date și o interfață de gestionare.
În plus, oferă API-uri și sintaxă rapide care sunt comparabile cu Firebase. Acest lucru vă permite să gestionați sarcinile CRUD într-un mod consecvent, permițându-vă să vă concentrați pe crearea mai degrabă decât pe rescrierea codului CRUD care se repetă.
Baza de date Postgres este un tabel care vă permite să stocați date organizate și conectate în același mod în care ați face-o într-o foaie de calcul. În mod surprinzător, atunci când creați un proiect, puteți utiliza o foaie de calcul existentă ca bază de date Postgres.
Cum funcționează Supabase?
Supabase este o colecție de tehnologii cu sursă gratuită. Ei creează funcții Firebase cu soluții open-source de nivel enterprise. Dacă instrumentele și comunitățile sunt disponibile sub o licență deschisă MIT, Apache 2 sau comparabilă, acestea le vor folosi și vor sprijini.
Dacă instrumentul nu există deja, îl creează și îl fac disponibil ca open-source. Supabase nu este o mapare 1:1 a Firebase. Scopul lor este de a oferi dezvoltatorilor o experiență de dezvoltare asemănătoare cu Firebase open-source tehnologii.
Supabase este o platformă care este găzduită. Vă puteți înscrie și începe să-l utilizați fără a fi nevoie să instalați nimic. Puteți, de asemenea, să vă autogăzduiți și să construiți pe propriul server.
- PostgreSQL are o reputație excelentă pentru stabilitate, robustețe a caracteristicilor și viteză; După mai bine de 30 de ani de dezvoltare activă,
- Realtime este un server Elixir care vă permite să ascultați inserările, actualizările și ștergerile PostgreSQL folosind WebSockets. Supabase ascultă cererile de replicare de la Postgres, convertește fluxul de octeți de replicare în JSON și apoi difuzează JSON prin WebSockets.
- PostgREST este un server web care convertește baza de date PostgreSQL într-un API RESTful.
- Stocarea oferă o interfață RESTful pentru gestionarea fișierelor stocate în S3, cu Postgres ca manager de drepturi.
- Postgres-meta este un API RESTful pentru administrarea Postgres care vă permite să descărcați tabele, să atribuiți responsabilități și să efectuați interogări, printre altele.
- GoTrue este un API bazat pe SWT care vă permite să gestionați utilizatorii și să emiteți jetoane SWT.
- Kong este un gateway API care rulează pe cloud.
Noțiuni de bază
1. Proiect
În Supabase, un proiect este un container pentru toate bazele de date, utilizatorii de autentificare, reguli, tabele și stocarea fișierelor.
Există mai multe locuri din care să vă găzduiți proiectul, iar administratorii Supabase adaugă constant site-uri noi pentru a reduce latența. Crearea unui proiect durează aproximativ 2 minute, așa că ia o cafea, stai pe loc și relaxează-te.
2. Tabloul de bord al proiectului
Când proiectul dvs. este terminat, vi se va prezenta un tablou de bord similar cu cel prezentat mai jos. Acest tablou de bord vă arată tot ce trebuie să știți despre proiectul dvs., inclusiv conexiunile la baze de date, cererile de autentificare, capacitatea de stocare, implementarea bibliotecii client și multe altele.
3. Creator și editor de tabele
Baza de date Supabase este un PostgreSQL relațional cu capabilități în timp real și control al accesului la politici folosind Postgres RLS (Row Level Security). Dezvoltatorii pot folosi tabloul de bord Supabase pentru a construi un tabel și pentru a adăuga coloane și proprietăți. Dezvoltatorii pot modifica datele direct din tabloul de bord cu Supabase.
4. Autentificare
Google, GitHub, Facebook, Twitter, GitLab și alți Furnizori de autentificare sunt disponibili pe Supabase. Acestea pot fi activate folosind Panoul de autentificare. De asemenea, acceptă Phone OTP și Magic Link Authentication.
5. Depozitare
Supabase este un sistem de stocare a obiectelor open-source care poate gestiona orice tip de fișier și are scalabilitate încorporată. Are un API ușor de utilizat care permite reguli și permisiuni personalizate. Integrarea CDN, precum și auto-transformarea și optimizarea (redimensionarea și comprimarea materialului dvs.), vor fi disponibile în curând. Stocarea Supabase va fi un rival formidabil pentru stocarea Firebase prin includerea acestor capabilități.
Ce poți construi cu Supabase? (Cateva exemple)
1. Plata abonamentului cu Supabase + Stripe + Next.js.
Setul complet de pornire pentru aplicații SaaS de înaltă performanță.
- Supabase oferă administrare și autentificare sigură a utilizatorilor.
- Stripe Checkout și integrarea portalului pentru clienți Stripe.
- Supabase oferă instrumente puternice de acces la date și de gestionare pe lângă PostgreSQL.
- Webhook-urile Stripe permit sincronizarea automată a planurilor de preț și a stărilor abonamentului.
2. KeepLink: Serviciu simplu de marcaje cu etichete și arhivă
KeepLink este un serviciu de marcaj de bază cu etichete și o arhivă construită cu Supabase și Next.js. Nu are nicio caracteristică de partajare socială, dar vă puteți găzdui propria instanță.
- Etichetați automat marcaje noi pe baza etichetelor existente.
- Căutarea în text complet pentru URL-uri, titluri, descrieri, etichete și conținut de arhivă datorită stivei Supabase, alias-uri de etichetare pentru bazele de date de administrare și acces API odihnitor este acum posibilă.
- Cu metascraper, puteți aduna automat titluri și descrieri pentru paginile dvs. De asemenea, vă puteți arhiva paginile cu SinglePage și Headless Chrome.
3. Aplicație de chat în timp real cu Supabase + React
- Pentru mesageria în timp real, se utilizează Supabase (pe lângă PostgreSQL).
- Front-end utilizează React (CRA) + Vite
- Biblioteca UI utilizată este Chakra UI.
Caracteristici-cheie
Iată câteva dintre caracteristicile Supabase:
- Un tablou de bord/interfață de utilizator pentru configurarea și administrarea bazei de date în mai puțin de un minut.
- Pentru a înregistra utilizatori și a actualiza restricțiile de acces în baza de date, aplicați autentificarea utilizatorului.
- API-uri și o bibliotecă JavaScript.
- Ascultători de baze de date în timp real.
- Funcțiile (un fel). Acestea sunt proceduri stocate în baze de date care pot fi scrise în SQL, JavaScript, Python sau Java.
Pro-uri
Supabase se distinge din următoarele motive:
- Spre deosebire de Firebase, este posibil să efectuați interogări complicate sau căutări text.
- Supabase se ocupă de scalare pentru dvs. (chiar dacă folosește o bază de date SQL)
- Migrarea datelor este simplă cu Supabase, deoarece folosește PostgreSQL și puteți importa date folosind un fișier .sql.
Contra
Există câteva dezavantaje ale adoptării Supabase. Acestea sunt după cum urmează:
- Pentru a primi modificări în timp real, trebuie să activați funcționalitatea de replicare pentru un tabel.
- Când actualizările în timp real sunt activate, politicile de securitate Supabase nu se aplică.
- Caracteristicile sunt limitate.
- SDK-ul său funcționează numai cu JavaScript (suportul pentru alte limbi este încă în versiune beta)
Tarif
1. Nivel gratuit
- Bază de date cu 500 MB spațiu de stocare și apeluri API nelimitate
- Autentificare – Până la 10,000 de utilizatori
- Stocare de fișiere – Până la 1 GB de stocare, cu limitări lunare de transfer de până la 2 GB.
2. Plătiți pe măsură ce mergeți
- Bază de date – 0.125 USD per GB de stocare, fără limite pentru apelurile API
- Auth – Nelimitat
- Stocare fișiere – Date stocate 0.021 USD per GB cu transfer de date de 0.07 USD/GB
Pentru mai multe informații despre prețuri, puteți consulta site-ul lor.
Concluzie
Supabase este cel mai bun open-source alternativă la Firebase de la Google. Datorită puterii PostgreSQL, acesta oferă diverse caracteristici remarcabile și nu are nicio limită de tip de date ca alte sisteme de baze de date în timp real.
Puteți crea o varietate de aplicații folosind Supabase și caracteristicile sale excelente. Încercați azi!
Marcelo
În cazul unui SaaS B2B, este posibil să existe 1 utilizator master per client și alți N utilizatori legați de acest master care se ocupă doar cu datele acestui client?