Novità
Nuove funzioni e miglioramenti di Espobase, dai più recenti.
Espobase è aperto a tutti
- Ogni progetto ha il proprio database Postgres con un'API REST automatica, sicurezza a livello di riga attiva per impostazione predefinita, accesso per gli utenti della tua app, archiviazione di file, aggiornamenti in tempo reale ed edge functions.
- L'hosting per il tuo front end è incluso in Pro e Group: pubblica da una cartella o collega GitHub, con deploy a ogni push, repository privati e un indirizzo di anteprima per ogni pull request.
- Inizia con il piano Free e passa a un piano superiore quando ti serve di più.
Build da GitHub: repository privati, pubblicazione a ogni push e anteprime
- Collega un account GitHub in GitHub nella barra laterale, poi scegli GitHub come origine del codice nelle impostazioni di build di un sito. I repository privati funzionano e Espobase li legge solo mentre una build è in corso.
- Un push sul ramo di produzione compila e pubblica il sito. Ogni pull request dello stesso repository ha un'anteprima al proprio indirizzo: pubblica, nascosta ai motori di ricerca e rimossa alla chiusura della pull request. Le pull request dei fork non vengono mai compilate.
Variabili per le tue build
- Dai variabili d'ambiente alle build di un sito: apri il sito in Hosting, poi Configura le compilazioni e Variabili di build. I valori pubblici (come VITE_API_URL) sono mostrati; i segreti sono cifrati, non vengono più mostrati e sono nascosti nei log di build.
- Tutto ciò che una build inserisce nei file del sito può essere letto da ogni visitatore, quindi la dashboard avvisa quando un segreto ha un nome che i framework copiano nel sito (VITE_… o NEXT_PUBLIC_…).
Compila il tuo sito da Git
- Un sito ospitato ora può essere compilato da un repository Git pubblico (GitHub, GitLab, Bitbucket o Codeberg) con un progetto Node: apri il sito in Hosting, scegli Configura le compilazioni, inserisci il repository e fai clic su Compila ora. Espobase installa, compila e pubblica il risultato.
- Ogni passaggio viene eseguito in un ambiente isolato con 2 CPU, 4 GB di memoria e un limite di 10 minuti, e il log compare nella scheda del sito mentre è in corso.
- Pro include 500 minuti di build al mese e Group ne include 2.000. Repository privati, variabili di build, deploy a ogni push e anteprime dei branch non sono ancora disponibili.
Utilizzo e banda dell'hosting
- La pagina Hosting ora mostra quanta banda hanno usato i tuoi siti in questo ciclo di fatturazione, e Utilizzo elenca richieste e banda dei siti ospitati.
- Pro include 250 GB di banda dei siti ospitati al mese e Group ne include 1 TB. Ricevi un'email al 75%, 90% e 100% e il traffico extra non viene mai addebitato.
- I tuoi siti continuano a funzionare fino al 125% di quanto incluso. Oltre, i visitatori vedono una pagina di limite di banda fino al prossimo ciclo di fatturazione, o finché non passi a un piano con più banda. Non viene eliminato nulla.
Il tuo dominio su un sito ospitato
- Servi un sito ospitato sul tuo dominio, come www.tuomarchio.com: apri il sito in Hosting, scegli Gestisci i domini, aggiungi il dominio e pubblica i due record DNS mostrati. Il certificato HTTPS viene emesso automaticamente.
- Pro include 1 dominio personalizzato per sito e Group ne include 5. Il sito continua a rispondere anche sul suo indirizzo espohost.com.
Hosting per il tuo front end
- Pubblica il front end della tua app accanto al backend. Carica un sito già compilato dalla dashboard (Hosting, nel menu a sinistra) e sarà online su https://<nome>.espohost.com con HTTPS automatico.
- Ogni deploy viene conservato, così puoi tornare a una versione recente con un clic. Sono supportate le app a pagina singola e la tua pagina 404.
- Incluso in Pro e Group senza costi aggiuntivi: 10 siti e 10 GB di file ospitati in Pro, 50 siti e 100 GB in Group. Free non include l'hosting.
- espobase 0.4.0: `espobase deploy ./dist --site my-app` e `espobase sites list` pubblicano dal terminale o da CI, con un token che ha solo il nuovo permesso "Deploy dei siti".
SDK per Swift, Flutter e Kotlin
- Swift: aggiungi github.com/Naples210/espobase-swift in Xcode (Swift Package Manager) per iOS, macOS, tvOS e watchOS. Nessuna dipendenza.
- Flutter e Dart: esegui flutter pub add espobase. Query al database, autenticazione delle app (email, Google, GitHub e Accedi con Apple), Storage e funzioni edge.
- Kotlin (Android e JVM): aggiungi implementation("com.espobase:espobase-kotlin:0.1.0") alle dipendenze di Gradle.
- Il realtime non è ancora in questi: usa l'API REST o il client JavaScript per il realtime.
Accedi con Apple per gli utenti della tua app
- Attiva Accedi con Apple in Autenticazione › Provider, con il tuo account Apple Developer: Services ID, Team ID, Key ID e la tua chiave privata (salvata cifrata e non più mostrata).
- Funziona sul web e in modo nativo su iPhone e iPad: passa il token di identità della schermata di accesso di Apple a espobase.auth.signInWithIdToken. Aggiungi il bundle ID della tua app perché Espobase lo accetti.
- Le stesse regole di sicurezza di Google e GitHub: solo email verificate, e un account si unisce a uno esistente solo se entrambi sono verificati. Funzionano anche gli indirizzi di inoltro privato di Apple.
- @espobase/client 0.5.0: signInWithIdToken per le schermate di accesso native.
Ricerca nella documentazione e una guida a React Native
- Cerca nella documentazione e nelle guide dalla casella in alto in qualsiasi pagina. Funziona in tutte le lingue del sito.
- Nuova guida: la tua prima app con React Native ed Expo, dalla registrazione e dall'accesso social ai dati privati e al caricamento di foto.
- Le app mobili ora possono far accedere gli utenti tramite il proprio link dell'app: aggiungi un indirizzo come myapp://auth/callback in Autenticazione › Impostazioni › URL di reindirizzamento consentiti. Vengono usati solo gli indirizzi che indichi.
- @espobase/client 0.4.1: funziona in React Native. L'accesso social non richiede più il crypto del browser e restituisce l'URL del provider da aprire quando non c'è una pagina del browser verso cui navigare.
Panoramica del database e checklist per iniziare
- Database › Panoramica ora mostra la dimensione del database, le connessioni aperte, le tabelle più grandi con il numero stimato di righe e lo stato della sicurezza a livello di riga, e le estensioni installate, con i dati di connessione e la rivelazione della password sotto.
- La Panoramica di un nuovo progetto ha una breve checklist per iniziare: creare una tabella, aggiungere una chiave API, collegare la tua app e distribuire una funzione, ognuna con codice da copiare. Si spunta man mano e scompare quando hai finito.
Ridimensiona le immagini al volo
- Pro e Group: chiedi una miniatura o un'altra dimensione di qualsiasi immagine in Storage aggiungendo ?width=200 (e height, resize, format e quality) al suo URL. Ogni dimensione viene creata una volta e poi servita da una cache.
- Con l'SDK: getPublicUrl(path, { transform: { width: 200 } }) per un <img>, e la stessa opzione su createSignedUrl e download. Il ridimensionamento funziona dove il file può essere letto: bucket pubblici, link firmati e le tue policy di storage.
- Pro include 10,000 nuove dimensioni al mese, Group 100,000. Le dimensioni già create continuano a essere servite e non contano nel tuo spazio per i file.
- @espobase/client 0.4.0: un'opzione transform su getPublicUrl, createSignedUrl e download per le immagini ridimensionate.
Usa il tuo dominio per l'API del tuo progetto
- Progetto › Impostazioni › Domini (Pro e Group): servi la tua API dal tuo nome, come api.customerapp.com, invece di api.espobase.com/project/…. Aggiungi il dominio, pubblica un record TXT che dimostri che è tuo e un CNAME che lo punti a Espobase, poi controlla i record.
- Il certificato HTTPS viene emesso in automatico alla prima richiesta. REST, autenticazione, storage, realtime e funzioni rispondono tutti sul tuo dominio.
- Pro include 1 dominio personalizzato per progetto, Group 10.
Ripristina un backup dalla dashboard
- Database › Backup: guarda i backup del tuo progetto e ripristinane uno tu stesso (amministratori e proprietari; scrivi il nome del progetto per confermare). La tua API non è disponibile solo per un attimo mentre il database ripristinato viene messo al suo posto.
- Il database che un ripristino sostituisce viene conservato 7 giorni, così puoi annullare il ripristino. I ripristini sono disponibili in tutti i piani, fino a 5 al giorno per progetto.
- I file di Storage non fanno parte dei backup: un ripristino non li modifica.
Migrazioni del database dalla CLI
- espobase 0.3.0: tieni lo schema come file SQL nel tuo repository. espobase migration new <name> ne crea uno, espobase db push applica in ordine quelli in attesa (ognuno per intero o per niente), --dry-run li verifica prima e espobase migration list mostra cosa è applicato.
- Gli sviluppatori possono inviare modifiche a dati e schema; regole di sicurezza, permessi e modifiche distruttive richiedono un amministratore (quelle distruttive anche --allow-destructive). Gli errori indicano file e riga.
- CI: crea un token con il nuovo permesso Apply migrations ed esegui espobase db push --yes.
Job pianificati e webhook del database
- Progetto › Automazioni: esegui una edge function secondo un programma (cron, nel tuo fuso orario, con un corpo JSON facoltativo). Le esecuzioni fallite vengono ritentate 3 volte, e ogni tentativo è nella scheda Esecuzioni.
- Webhook del database: quando le righe di una tabella vengono inserite, aggiornate o eliminate, Espobase invia la modifica al tuo URL HTTPS (firmata con un segreto) o a una delle tue edge function.
- Free: 2 pianificazioni (al massimo ogni ora) e 2 webhook per progetto. Pro: 20 di ciascuno, fino a ogni minuto. Group: 100 di ciascuno.
Opzioni di accesso per le tue app e il tuo account
- App Authentication: accesso via email senza password (un link e un codice di 6 cifre), verifica in due passaggi (un'app di autenticazione o un codice via email, con codici di recupero; facoltativa o obbligatoria) e cambio email. Ognuna è un'opzione in Authentication › Settings, disattivata finché non la attivi.
- Pro e Group: i tuoi modelli email e il tuo server di posta e indirizzo mittente per le email che ricevono gli utenti della tua app.
- Il tuo account Espobase: accesso in due passaggi con un'app di autenticazione e codici di backup (Impostazioni account › Sicurezza). I proprietari di un'organizzazione possono richiederlo a tutti i membri.
- @espobase/client 0.3.0: signInWithOtp, verifyOtp, auth.mfa, updateUser({ email }) e verifyEmailChange.
Edge Functions e realtime
- Edge Functions: scrivi funzioni TypeScript nella dashboard e distribuiscile con un clic, oppure con npx espobase functions deploy. Le funzioni di ogni progetto girano in un ambiente isolato. Segreti, log di ogni chiamata e utenti che hanno effettuato l'accesso verificati sono inclusi; espobase.functions.invoke() le chiama dalla tua app.
- Realtime: messaggi broadcast e presenza sui canali, e modifiche delle righe in tempo reale per le tabelle che attivi, filtrate dalle regole di sicurezza di ogni tabella (espobase.realtime).
- Nuove guide: espobase.com/docs/functions e espobase.com/docs/realtime.
Ricerca vettoriale, la CLI di Espobase e le guide
- Ricerca vettoriale: ogni progetto include pgvector. Crea colonne vector nell'Editor tabelle o con il builder AI, aggiungi un indice di similarità veloce (HNSW) e cerca tramite una funzione del database.
- @espobase/client: espobase.rpc() chiama le funzioni del database, ad esempio per la ricerca per similarità, con la sicurezza a livello di riga applicata.
- La CLI di Espobase: npx espobase login (nel browser), init, gen types, db query in sola lettura, logs, usage ed elenco dell'archiviazione.
- Crea nuove organizzazioni dal menu delle organizzazioni. Il piano Free include un'organizzazione per persona.
- Novità: guide per Next.js, accesso e regole di sicurezza, caricamento file e ricerca vettoriale; e questa pagina delle novità.
Backup giornalieri
- Il database di ogni progetto viene salvato ogni giorno con un backup cifrato, conservato fuori dal server e bloccato contro l'eliminazione per 7 giorni. I backup vengono conservati 1 giorno con Free, 7 con Pro e 14 con Group.
- Quando elimini un progetto, prima viene creato un backup di sicurezza verificato, conservato per 30 giorni.
Strumenti AI, archiviazione file e team
- Collega Claude, ChatGPT, Cursor, VS Code e altri strumenti AI tramite il connettore di Espobase (MCP), con “Accedi con Espobase”. Leggono il tuo schema, il riferimento API, i log e l'utilizzo, eseguono query di sola lettura e propongono modifiche che approvi tu.
- Token di accesso personali per script e CI.
- Archiviazione file: bucket pubblici e privati, caricamenti dalla tua app, link firmati e regole di sicurezza sui file.
- Accesso per progetto: assegna ai membri il ruolo di amministratore, sviluppatore o lettore su progetti selezionati (Pro e Group).
- Accedi alla dashboard con GitHub, Google o Apple; single sign-on (SSO) per le organizzazioni Group.
Espobase è online
- Progetti con un database PostgreSQL dedicato, un'API REST automatica e registrazione e accesso degli utenti per le tue app.
- Editor tabelle, Editor SQL e sicurezza a livello di riga attiva per impostazione predefinita, con modelli di policy.
- Il builder AI: descrivi il tuo backend, rivedi il piano e il suo SQL, poi applicalo.
- Documentazione API, OpenAPI e tipi TypeScript generati per ogni progetto; log e utilizzo.
- Piani: Free, Pro e Group.