2.8 KiB
2.8 KiB
Building Production-Grade Web Applications with Supabase multi-tenancy, and more David Lorenz
- ![9781837630684-BUILDING_PRODUCTION_GRADE_WEB_APPLICATIONS_WITH_SUPABASE.pdf](../assets/9781837630684-BUILDING_PRODUCTION_GRADE_WEB_APPLICATIONS_WITH_SUPABASE_1725625620379_0.pdf)
-
Studio di Supabase dal libro
- Supabase è fortemente basato su postgres
- Schema del modello FGA (Fine Grained Authorization)
- Il controllo dei permessi è gestito direttamente dal database, questo consente di semplificare enormemente la gestione dei permessi. Il controllo sui permessi è infatti eseguito direttamente dal database e non dal backend. In questo modo il codice che interagisce con il database, sia lato frontend che lato backend può essere enormemente semplificato, come si vede dall'esempio che segue.
collapsed:: true
- Questo è un modo per salvare un documento di testo in
javascript
ma solo se l'utente possiede i permessi appropriati. -
const supabaseClient = createSupabaseClient(); supabaseClient.from('documents').update({ content }).match({ documentId })
- Questo è un modo per salvare un documento di testo in
- Per avere una panoramica del flusso dei dati da utente a backend a utente nuvoamente può essere utile lo schema che segue.
- I principali servizi di supabase sono
- Supabase Auth
- PostgREST
- Realtime
- Storage
- Image Proxy
- Si costruirà un sistema di ticket basato su Supabase e
Next.js
. Le spiegazioni del libro dovrebbero comunque essere indipendenti dalla tecnologia scelta per il frontend. - Il sistema sarà multi-tenant, questo significa che l'accesso alle risorse dipenderà dai permessi dell'utente autenticato e dal dominio su cui è installata l'applicazione.
-
Installazione di
Supabase CLI
- Si possono utilizzare i moduli di #golang
-
go install github.com/supabase/cli@latest sudo ln -s "$(go env GOPATH)/bin/cli" /usr/bin/supabase
-
- Creare una cartella di progetto ed eseguire il comando
supabase
-
mkdir myproject && cd myproject supabase init supabase start
-
- E' necessario avere
docker
opodman
installato sul sistema. - Per installare #podman su #archlinux fare riferimento a ((66f12589-34d7-4a14-b226-d59679c70d28))
- Si possono utilizzare i moduli di #golang
-
Primi passi con il client #Javascript
- Prima di tutto occorre recuperare l'URL dell'instanza supabase e la chiave anonima.