App Drive

Guida ad App Drive

App Drive è la piattaforma per pubblicare, condividere e monitorare le applicazioni web aziendali, comprese quelle sviluppate con strumenti di AI come Lovable, Bolt, v0, Claude e Cursor. Consente inoltre alle agenzie di consegnare le applicazioni dei propri clienti con il proprio marchio. Questa guida descrive funzionalità, modalità d'uso e ruoli: dalla configurazione dell'organizzazione agli inviti, dalla pubblicazione alla condivisione, fino al monitoraggio e alle segnalazioni.

Indice

  1. Panoramica
  2. Destinatari
  3. Glossario
  4. Primi passi
  5. Organizzazioni
  6. Inviti
  7. Team e permessi
  8. Pubblicazione delle piattaforme
  9. Utilizzo delle piattaforme
  10. Marchio aziendale
  11. Dati nel cloud
  12. Database delle piattaforme
  13. Panoramica delle piattaforme (Hub)
  14. Agenzie partner e clienti
  15. Errori e utilizzo con l'AI
  16. Segnalazioni e integrazioni
  17. Piani e abbonamento
  18. Account
  19. Sicurezza e privacy
  20. Domande frequenti

Panoramica

Agenzie e software house sviluppano per i propri clienti applicazioni web su misura: CRM, gestione ordini, dashboard. Tradizionalmente le consegnano come semplici link, con indirizzi, credenziali e server diversi: il cliente si trova a gestire strumenti frammentati anziché un servizio unitario.

Con App Drive ogni cliente dispone di un'unica applicazione, con il marchio dell'agenzia, che raccoglie tutte le sue piattaforme:

La home di App Drive nel browser, con le anteprime delle piattaforme

Destinatari

Destinatario Utilizzo di App Drive
Agenzie digitali Un'organizzazione per ogni cliente: il cliente accede a tutte le sue applicazioni da un unico punto, con il marchio dell'agenzia o con il proprio.
Software house Gestionali e dashboard su misura consegnati come prodotto, con aggiornamenti automatici da GitHub.
IT interno delle PMI Gli strumenti interni di reparti e sedi riuniti in un'unica applicazione, con permessi definiti per team.

App Drive ospita siti statici: Flutter web, React, Vue, Angular, Svelte, Astro, Next.js con export statico o HTML. L'eventuale backend (Supabase, Firebase o un server dedicato) resta sull'infrastruttura esistente: su App Drive viene pubblicato il frontend. Un'applicazione già pubblicata altrove (Vercel, Netlify, Lovable o un dominio proprio) si aggiunge tramite il suo indirizzo, senza caricare file.

Glossario

Termine Definizione
Piattaforma Un'applicazione web pubblicata su App Drive, con indirizzo dedicato https://<nome>.apps.somio.cloud, icona e nome.
Organizzazione Lo spazio di un cliente (o dell'agenzia): utenti, team, piattaforme, marchio e abbonamento. Le organizzazioni sono isolate tra loro.
Proprietario del server Il gestore di App Drive, che crea le organizzazioni e ne invita gli amministratori. Su drive.somio.cloud è Somio.
Amministratore Gestisce la propria organizzazione: utenti, inviti, marchio, integrazioni e abbonamento.
Membro Utilizza le piattaforme a cui ha accesso, pubblica le proprie, crea team e condivide.
Team Un gruppo di utenti della stessa organizzazione con cui condividere determinate piattaforme.

Primi passi

  1. Richiedi un invito dalla pagina principale. Durante la beta l'accesso è concesso a un numero limitato di aziende alla volta: ti contatteremo non appena sarà disponibile un posto.
  2. Ricevuto il codice di invito, apri App Drive nel browser su drive.somio.cloud/app oppure dall'app per smartphone.
  3. Seleziona Hai ricevuto un invito? Registrati e inserisci codice, e-mail e una password di almeno 12 caratteri. L'account viene creato con il ruolo di amministratore dell'organizzazione.
  4. Personalizza nome, colore e logo (Marchio aziendale).
  5. Pubblica la prima piattaforma (Pubblicazione delle piattaforme) e invita i colleghi (Inviti).

La pagina di accesso

In caso di password dimenticata, seleziona Password dimenticata? nella pagina di accesso: riceverai via e-mail un codice per impostarne una nuova.

Navigazione. Nel browser da computer il menu si trova a sinistra ed è suddiviso in tre gruppi: le voci comuni (Piattaforme, Team, Collegamenti), La tua organizzazione (riservato agli amministratori) e Server (riservato al proprietario del server). In basso è disponibile l'account. Su smartphone le stesse voci si trovano nel menu ⋯ in alto a destra.

Organizzazioni

Un'organizzazione è lo spazio di un cliente: utenti, team, piattaforme, marchio e abbonamento. Le organizzazioni sono isolate: utenti, team e piattaforme di un cliente non sono visibili né accessibili agli altri.

Creazione di un'organizzazione

Le organizzazioni sono create dal proprietario del server, da Organizzazioni clienti › Nuova: dopo aver indicato il nome del cliente, apre la relativa pagina e seleziona Invita con l'opzione Amministratore dell'organizzazione attiva. La persona invitata riceve il codice, si registra e assume il ruolo di amministratore, con la possibilità di invitare i propri colleghi.

Su drive.somio.cloud la prima organizzazione viene creata da Somio al momento dell'ingresso nella beta. Per attivarne altre, una per ciascun cliente, scrivi a tickets@somio.it: sono incluse nell'abbonamento.

Le organizzazioni clienti

Più organizzazioni, un unico account

Lo stesso utente può appartenere a più organizzazioni con la stessa e-mail e la stessa password: il personale dell'agenzia accede agli spazi di tutti i clienti e un cliente può abilitare un consulente esterno.

Il cambio di organizzazione

Inviti

L'accesso ad App Drive avviene esclusivamente su invito: non è prevista una registrazione libera. Un invito è un codice generato nell'app e inviato alla persona interessata, insieme alle istruzioni già predisposte.

Invitare nella propria organizzazione (amministratori)

  1. Apri Utenti e inviti e seleziona Invita.
  2. Facoltativo: indica il destinatario. Se specifichi un'e-mail, il codice potrà essere utilizzato solo da quell'indirizzo.
  3. Imposta la validità del codice in giorni e seleziona Crea invito.
  4. Condividi il codice. Viene mostrato una sola volta: copialo o inoltralo subito.

Il destinatario apre App Drive, seleziona Hai ricevuto un invito? Registrati e inserisce il codice. Se dispone già di un account App Drive in un'altra organizzazione, utilizza la stessa e-mail e la propria password, oppure Accedi con un codice di invito da Le mie organizzazioni.

La scheda Inviti riporta gli inviti in attesa, utilizzati, scaduti o revocati e consente di revocare un codice non ancora utilizzato.

Utenti e inviti

Autorizzazione a invitare

Per impostazione predefinita solo gli amministratori dell'organizzazione possono invitare nuovi utenti. In Utenti e inviti › Inviti › Chi può invitare è possibile attivare Anche gli amministratori dei team: gli amministratori di un team potranno invitare nuovi utenti direttamente nel proprio team (vedi Team e permessi). Gli utenti così invitati entrano comunque nell'organizzazione con il ruolo di membro.

Gestione degli utenti

In Utenti e inviti, selezionando un utente è possibile:

Se l'utente utilizza lo stesso account in altre organizzazioni, compare l'indicazione Anche in altre organizzazioni: sospensione ed eliminazione hanno effetto solo nella propria organizzazione e la password si reimposta con Password dimenticata?.

Team e permessi

Ogni utente visualizza le proprie piattaforme e quelle condivise con i team di cui fa parte. Un team è un gruppo di utenti della stessa organizzazione, ad esempio "Magazzino" o "Amministrazione".

Creazione di un team e aggiunta dei membri

  1. Apri Team (su smartphone: menu ⋯ › Team e condivisione) e seleziona Nuovo team. Chi lo crea ne diventa amministratore.
  2. Seleziona Aggiungi membro: viene mostrato l'elenco degli utenti dell'organizzazione non ancora presenti nel team. Cercali per e-mail, selezionane uno o più e conferma con Aggiungi.
  3. Per chi non dispone ancora di un account, scegli Aggiungi tramite e-mail: se l'organizzazione lo consente (Anche gli admin dei team), App Drive genera un codice che registra la persona e la inserisce direttamente nel team. In caso contrario, l'invito deve essere inviato prima da un amministratore dell'organizzazione.

I team

Gli amministratori del team possono nominare altri amministratori, definire cosa possono fare i membri (aggiungere utenti, condividere le proprie piattaforme nel team), rimuovere utenti o eliminare il team.

Condivisione di una piattaforma

Apri il menu di una tua piattaforma (pulsante ⋯, tasto destro o pressione prolungata) › Condivisione e accessi:

I membri trovano le piattaforme condivise nella propria home, contrassegnate dall'icona delle persone accanto al nome: possono aprirle (anche se richiedono login), renderle disponibili offline e riordinarle, ma non eliminarle. Chi non è proprietario può soltanto archiviarle, ovvero rimuoverle dalla propria home (vedi La home).

Pubblicazione delle piattaforme

Il punto di partenza è Aggiungi piattaforma: il pulsante in alto nella home da computer, oppure menu ⋯ › Aggiungi app da smartphone. Le origini disponibili sono:

Origine Quando utilizzarla
Da un indirizzo L'applicazione è già pubblicata: Lovable, Bolt, Replit, v0, Cloudflare o un dominio proprio.
Da Vercel o Netlify L'applicazione è un progetto Vercel o Netlify: si seleziona dall'elenco e se ne monitorano i deploy.
Da GitHub Il codice risiede su GitHub (compreso quello di Lovable, Bolt e v0, che vi si sincronizzano): App Drive esegue build e hosting a ogni push.
Carica un file .zip La cartella della build è disponibile in locale.

Con GitHub e .zip l'applicazione è ospitata da App Drive su https://<nome>.apps.somio.cloud; con indirizzo, Vercel e Netlify resta sull'hosting originale e App Drive la integra. Nel browser, la voce Pubblicazione del menu laterale raccoglie le stesse origini e gli account collegati (GitHub, Vercel, Netlify).

Controllo della build. Prima che una nuova versione vada online App Drive controlla che index.html trovi tutti i file che carica. Se ne manca qualcuno la pagina resterebbe bianca: la versione non viene pubblicata, resta online quella precedente e il messaggio dice cosa correggere. Il caso tipico è il base di Vite impostato per un altro hosting (/nome-repo/): va messo base: "/" in vite.config. Se il codice chiama http://localhost, la versione viene pubblicata ma App Drive avvisa: quegli indirizzi funzionano solo sul computer dove è stata fatta l'app.

Versione di prova. Dal menu della piattaforma, Versione di prova pubblica una versione da provare (o da far provare al cliente) prima che vada online, su un indirizzo suo: https://<nome>--prova.apps.somio.cloud. Chiede sempre il login, anche se l'app è pubblica, e la vede solo chi può vedere l'app. Si carica come zip oppure, per le app collegate a GitHub, si sceglie un branch di prova (es. dev): i push su quel branch aggiornano la prova, quelli sul branch principale continuano a pubblicare la versione online, e una build di prova non riuscita non segna l'app come guasta. Promuovi la rende la versione online (con gli stessi controlli di una pubblicazione); la versione precedente resta per tornare indietro.

Da GitHub (consigliato)

Ogni push sul branch selezionato avvia build e pubblicazione automatiche, in 2–5 minuti.

  1. Seleziona Aggiungi app › Da GitHub (nel browser anche Collegamenti › GitHub) e quindi Collega account GitHub. Scegli i repository a cui App Drive può accedere, anche privati, e conferma su GitHub.
  2. Seleziona Nuova piattaforma da GitHub: indica repository, branch, cartella (per i monorepo) e nome breve dell'indirizzo, quindi Collega e pubblica.
  3. App Drive aggiunge al repository il workflow .github/workflows/appdrive-<nome>.yml e il token di pubblicazione. Il tipo di progetto (Flutter, React, Vue, Angular, Svelte, Astro, Next.js con export statico, HTML) viene rilevato automaticamente.

Fino al completamento della prima build, l'icona riporta una clessidra arancione.

Per collegare un repository a una piattaforma esistente, apri il menu della sua icona › GitHub e pubblicazione. Nella stessa schermata sono disponibili le ultime build e il comando per avviare una nuova build.

Variabili di build

Se il progetto viene eseguito in locale con variabili, ad esempio flutter run --dart-define=SUPABASE_URL=<url> --dart-define=SUPABASE_ANON_KEY=<chiave> oppure con un file .env contenente variabili VITE_, anche la build su GitHub deve riceverle:

  1. Apri il menu della piattaforma › GitHub e pubblicazione › Variabili di build.
  2. Seleziona Incolla da flutter run o .env e incolla il comando o il file in uso.
  3. Conferma con Salva e ricompila.

Variabili trovate nel codice. In Variabili di build App Drive elenca le variabili che il codice usa e non sono ancora impostate (VITE_…, NEXT_PUBLIC_…, --dart-define, .env.example), con Aggiungi per ciascuna. Se l'app è collegata a un progetto Supabase, indirizzo e chiave anon sono già compilati: Aggiungi i valori di Supabase li inserisce tutti insieme.

Le variabili sono conservate in App Drive, non nel repository. In una web app, tuttavia, confluiscono nel codice del sito e sono quindi leggibili da chiunque lo apra: sono adatti URL e chiavi pubbliche (come la chiave anon di Supabase, protetta dalle Row Level Security), mai chiavi segrete.

Da un archivio .zip

Comprimi la cartella della build web (con index.html nella radice) e caricala da Aggiungi app › Carica un file .zip. È accettato anche un singolo index.html. Per gli aggiornamenti: menu della piattaforma › Carica una nuova versione.

Ogni percorso non riconosciuto restituisce index.html, a supporto del routing lato client (React Router, go_router). L'icona è ricavata dal manifest.json del progetto e può essere sostituita con Cambia icona.

Da un indirizzo (Lovable, Bolt, Replit, v0)

Aggiungi app › Da un indirizzo: inserisci l'indirizzo dell'applicazione (https://) ed eventualmente un nome. La piattaforma compare nella home con icona, team, condivisione e "Segnala"; App Drive ne rileva l'hosting (ad esempio Ospitata su Lovable). Dispone inoltre di un link App Drive, https://<nome>.apps.somio.cloud, che rimanda al sito.

All'interno di App Drive l'applicazione si apre nell'app; se il sito non consente l'incorporamento, nel browser viene aperto in una nuova scheda (il menu della piattaforma ne indica il motivo).

Da Vercel o Netlify

  1. Aggiungi app › Da Vercel o Netlify (nel browser anche Pubblicazione).
  2. Collega l'account con un token personale: su Vercel da Account › Tokens, su Netlify da User settings › Applications › Personal access tokens. Il token è conservato cifrato su App Drive e può essere scollegato in qualsiasi momento.
  3. Compare l'elenco dei progetti: seleziona Importa. Un progetto già presente nella home (importato da te, da un collega o aggiunto con lo stesso indirizzo) riporta Già nella home e non può essere importato una seconda volta.

Dal menu della piattaforma (Deploy su Vercel o Netlify) sono disponibili lo stato dell'ultimo deploy e, configurando un deploy hook, l'avvio di un nuovo deploy.

Dominio personalizzato

Una piattaforma ospitata su App Drive può rispondere anche a un indirizzo proprio o del cliente, come app.cliente.it:

  1. Menu della piattaforma › Dominio personalizzato, inserisci il dominio e premi Continua.
  2. Nel pannello del dominio crea il record CNAME indicato (nome e valore sono pronti da copiare).
  3. Premi Verifica: quando il dominio punta ad App Drive diventa attivo, con certificato HTTPS automatico. L'indirizzo dell'app nella home e nei link condivisi diventa quello nuovo; login, dati e monitoraggio funzionano come prima.

Ospita su App Drive: applicazioni riservate

Il login di App Drive protegge il link App Drive di una piattaforma ospitata altrove, ma non l'indirizzo diretto del sito (ad esempio <progetto>.vercel.app o <progetto>.lovable.app), che resta accessibile senza autenticazione a chiunque lo conosca. App Drive non può limitare l'accesso a un sito che non ospita e lo segnala nella schermata di condivisione.

Per una protezione completa, apri il menu della piattaforma › Ospita su App Drive e scegli Da GitHub o Carica .zip. Alla prima versione la piattaforma passa ad App Drive mantenendo link, team e impostazioni; da quel momento nessun contenuto è accessibile senza login. Fino ad allora il sito originale resta attivo e può essere dismesso successivamente.

Spazio e numero di piattaforme

Ogni organizzazione dispone di un limite di piattaforme e di spazio definito dal piano (Piani e abbonamento). Lo spazio comprende tutte le versioni conservate. L'utilizzo corrente è visibile in Account.

Utilizzo delle piattaforme

La home

Primi passi. Finché non sono completati, in cima alla home un riquadro indica i passi successivi, ciascuno con il suo pulsante: pubblicare la prima app, condividerla con un collega, proteggerla con il login e, se usa Supabase, collegarne il Back-End. Si chiude con Nascondi.

Seleziona una piattaforma per aprirla. Nel browser la home presenta le piattaforme come schede con anteprima in tempo reale (oppure come icone); su smartphone come icone, secondo lo schema dei sistemi mobili.

Sul telefono

Ricerca globale

Un'unica ricerca per trovare qualsiasi cosa: Cerca in cima al menu laterale, Ctrl+K (⌘K su Mac) da qualsiasi pagina, o la lente in alto sul telefono. Si scrive e compaiono, per gruppi:

↑ ↓ e Invio scelgono senza mouse. Toccando una voce dei dati si aprono le righe della sua scheda, già filtrate con quello che hai cercato. Ognuno trova solo ciò che può già aprire; nulla di quello che cerchi viene salvato sul server, e le ricerche recenti restano su questo dispositivo finché l'app è aperta.

Nel browser: menu ridotto e piattaforme affiancate

Una piattaforma aperta con il menu ridotto

Notifiche e numero sull'icona (versione web)

In Account › Notifiche su questo dispositivo si attivano le notifiche del browser, che arrivano anche con App Drive chiusa. Invia una notifica di prova verifica che arrivino.

Notifica Chi la riceve
Build non riuscita, nuovi errori, funzione Supabase non pubblicata, migrazioni Supabase da applicare Il proprietario della piattaforma e chi può pubblicarla
Consegne di un flusso scadute dopo 24 ore Chi ha creato il flusso, altrimenti gli amministratori
Versione di prova pronta (dopo un push sul branch di prova) Il proprietario e chi può pubblicarla
Nuova versione pubblicata Chi può aprire la piattaforma, tranne chi l'ha pubblicata
Nuovo membro nell'organizzazione Gli amministratori
Analisi AI completata (se dura più di qualche secondo) Chi l'ha avviata
Aggiornamento del server non riuscito Il proprietario del server

Toccando una notifica App Drive si apre sulla pagina dell'evento: la build non riuscita, gli errori dell'app, il back end Supabase, la versione di prova, l'app stessa, gli utenti o lo stato del server. Anche il link nelle e-mail di avviso porta lì. Se l'app non esiste più o la pagina non è tra quelle a cui hai accesso, si apre la home.

Ogni evento arriva una volta sola. Le e-mail restano per il proprietario (build, errori, Supabase, server): gli altri eventi arrivano solo come notifiche. Se App Drive è installata come app, la sua icona mostra il numero di cose da guardare.

Si attivano per ogni dispositivo e si spengono dallo stesso interruttore.

Su smartphone: schermo intero

Le piattaforme si aprono a schermo intero: le barre del telefono spariscono e in basso resta solo una sottile maniglia. Toccandola compare per qualche secondo la barra con Indietro, Segnala e il pulsante dello schermo intero; trascinandola verso l'alto si torna alla home. Il contenuto resta sempre nell'area sicura dello schermo (notch, angoli arrotondati, barra di sistema), e intorno alla pagina App Drive usa il colore della piattaforma. Il pulsante nella barra disattiva o riattiva lo schermo intero: la scelta resta memorizzata sul dispositivo.

Su smartphone: copie offline

Menu della piattaforma › Rendi disponibile offline: l'app ne scarica una copia, che viene aperta in assenza di rete o se il server non risponde. Quando è disponibile una nuova versione, l'icona mostra un indicatore blu: Aggiorna copia offline (oppure Aggiorna copie offline dal menu ⋯ per aggiornarle tutte).

Operazioni lunghe in background

Le operazioni che richiedono tempo non bloccano l'app: analisi e correzioni con l'AI, pubblicazione delle funzioni Supabase e delle Cloud Functions, migrazioni del database, regole e indici di Firestore, esportazione dei dati. Un riquadro in basso a destra ne mostra l'avanzamento mentre continui a lavorare o cambi pagina; se ne partono più di una, i riquadri si impilano. Su smartphone è una piccola pillola che dice cosa sta succedendo (arancione se serve una decisione): toccala per aprirla, Riduci per richiuderla. Quando serve una tua decisione il riquadro diventa un avviso con i pulsanti per scegliere. Alla fine dice com'è andata: se c'è un risultato da guardare (una diagnosi, un prompt di correzione, il file esportato) resta con Vedi o Scarica finché non lo apri o lo chiudi; altrimenti sparisce da solo dopo qualche secondo. Se nel frattempo sei rimasto sulla stessa pagina, il risultato si apre subito. Non chiudere l'app o il browser finché un'operazione è in corso.

Marchio aziendale

In Personalizza (amministratori) si definiscono nome, colore e logo dell'organizzazione. Gli utenti li visualizzano in cima alla home, sui pulsanti, nella pagina di accesso e nella pagina di login delle piattaforme riservate. Se il logo include già il nome, disattiva Mostra il nome accanto al logo.

Il proprietario del server può personalizzare ogni cliente da Organizzazioni clienti (menu dell'organizzazione › Personalizza): ogni cliente visualizza così il proprio marchio o quello dell'agenzia.

Personalizza

Dati nel cloud

Disponibile con il piano Pro, per le applicazioni ospitate da App Drive.

Le applicazioni sviluppate con l'AI salvano generalmente i dati nel browser: restano su un solo dispositivo e vanno persi cambiando telefono o browser. Con i dati nel cloud vengono conservati da App Drive, senza modifiche al codice.

Dati nel cloud o Supabase? I dati nel cloud servono alle applicazioni senza back end, che salvano tutto nel browser. Se l'applicazione usa già un database (Supabase, Firebase o un server dedicato) non sono necessari: i dati restano dove sono e la pagina lo segnala quando riconosce Supabase. Funzioni e segreti di Supabase si gestiscono da Back-End Supabase.

Menu della piattaforma › Dati nel cloud, quindi scegli:

Opzione Comportamento
Solo nel browser Impostazione predefinita: ogni dispositivo conserva una copia separata.
Per utente Ogni utente accede ai propri dati da tutti i suoi dispositivi.
Condivisi Tutti gli utenti dell'applicazione consultano e modificano gli stessi dati, ad esempio un registro condiviso.

Database delle piattaforme

Le applicazioni create con gli strumenti AI salvano i dati in modi diversi. App Drive lavora con quello che la piattaforma usa già, senza spostare i dati e senza modificare il codice:

Il database della piattaforma Cosa fa App Drive Dove si collega
Supabase (Lovable, Bolt…) Pubblica le funzioni, verifica i segreti, applica le migrazioni del database, collega il login; le tabelle sono disponibili nella Panoramica Menu della piattaforma › Back-End Supabase
PostgreSQL (Neon, Railway, server aziendale…) Le tabelle nelle schede della Panoramica e nei flussi Menu della piattaforma › Database PostgreSQL
Firestore (Firebase) Le raccolte nelle schede della Panoramica e nei flussi Menu della piattaforma › Firebase (Firestore)

Il menu della piattaforma mostra solo la voce del database che usa: App Drive riconosce Supabase e Firebase dalla build pubblicata e PostgreSQL dal repository GitHub (Prisma, Drizzle o un driver PostgreSQL tra le dipendenze), a ogni nuova versione. Se non lo riconosce, compare Collega un database, che chiede quale. Ogni piattaforma usa un solo database: se ne ha già uno collegato, gli altri non vengono proposti. In ogni caso App Drive legge solo ciò che serve e aggiunge dati solo su autorizzazione: non modifica né cancella mai righe o documenti esistenti (salvo i flussi che aggiornano un record, nei soli campi scelti). Le credenziali restano cifrate sul server e non vengono più mostrate.

Back-End Supabase: funzioni e segreti

Molte applicazioni create con Lovable, Bolt o strumenti analoghi usano Supabase come back end. Dal menu della piattaforma, Back-End Supabase riunisce in una sola pagina quanto serve per tenerlo allineato. I dati restano nel database Supabase: App Drive non li legge e non li sposta (è una funzione diversa dai Dati nel cloud, descritti più avanti).

La voce compare solo per le piattaforme che usano Supabase: App Drive lo riconosce da solo a ogni nuova versione, dall'indirizzo …supabase.co presente nella build.

  1. Progetto: App Drive riconosce il progetto usato dall'applicazione (dall'indirizzo …supabase.co nella build o nel repository). Collega l'account con un token di accesso creato su supabase.com › Account › Access tokens (conservato cifrato) e conferma il progetto proposto.
  2. Edge Functions: l'elenco delle funzioni presenti in supabase/functions e di quelle già pubblicate, con versione e data. Pubblica invia la funzione dal repository GitHub collegato (cartella della funzione e codice condiviso in _shared), rispettando verify_jwt di supabase/config.toml. Sotto ogni funzione pubblicata da App Drive c'è il suo stato: Allineata al repository (gira il codice di GitHub: il pulsante diventa Ripubblica, utile solo dopo aver cambiato un segreto), Modifiche da pubblicare (il codice è cambiato), oppure, se qualcuno l'ha pubblicata da un altro strumento, "non so se è allineata". Se la pubblicazione non riesce, Diagnosi spiega la causa con l'AI e propone il prompt per lo strumento con cui è stata creata l'applicazione. Con Pubblica a ogni push attivo, dopo ogni build da GitHub vengono pubblicate le funzioni modificate; quelle invariate restano come sono e una funzione non riuscita viene ritentata solo quando cambia il suo codice. Gli esiti compaiono nella stessa pagina e nel registro attività.
  3. Segreti: App Drive legge quali chiavi le funzioni richiedono (Deno.env.get) e segnala quelle non ancora impostate sul progetto. Imposta le salva direttamente su Supabase; Dove reperirli? indica con l'AI che cosa sono e in quale servizio recuperarle. I valori non vengono conservati né mostrati da App Drive. Un segreto che non serve (ad esempio di una funzione non usata) si toglie dalle segnalazioni con Ignora e torna con Segnala di nuovo; allo stesso modo Ignora su una pubblicazione non riuscita la toglie dal badge fino alla pubblicazione successiva di quella funzione. Per i segreti che sono un indirizzo (origine consentita, URL del sito o dei redirect) App Drive propone già il valore giusto: l'indirizzo dell'app.
  4. URL di autenticazione: dopo l'accesso e nei link delle e-mail (conferma, nuova password) Supabase riporta al Site URL del progetto, che nelle app fatte con uno strumento AI spesso è ancora localhost:3000 o l'anteprima dello strumento. App Drive lo segnala e Correggi la configurazione aggiunge l'indirizzo dell'app pubblicata ai redirect consentiti e, solo se il Site URL punta a localhost o a un'anteprima, lo usa come Site URL; un dominio vero già impostato resta. Lo fa anche da solo quando si collega il progetto.
  5. Migrazioni del database: le modifiche al database che lo strumento AI scrive in supabase/migrations. App Drive mostra quali non sono ancora applicate e cosa fa ciascuna in parole semplici ("crea la tabella ordini", "ELIMINA la colonna…"). Applica la prossima e Applica tutte le eseguono in ordine, ognuna in una transazione: se una non riesce non cambia nulla e le successive non partono. Quelle che cancellano dati sono in rosso e chiedono una conferma in più. Se il progetto non registra quali sono già applicate (capita quando le ha applicate lo strumento AI) e l'app funziona, Segna come già applicate le registra senza eseguirle. Le migrazioni vanno in background: un riquadro in basso a destra (in basso su smartphone) mostra l'avanzamento e puoi chiudere la pagina e continuare a usare l'app (non chiudere però l'app o il browser: la migrazione in corso finisce, le successive ripartono da lì la volta dopo). Se serve una decisione, il riquadro diventa un avviso: se una migrazione crea qualcosa che il database contiene già, Segna e continua la segna come applicata e prosegue con le successive, Non modificare si ferma; spuntando Segna così anche le prossime già presenti le successive nella stessa situazione vengono segnate senza chiedere; Rifiuta la toglie dall'elenco e passa alla successiva. Una migrazione che non vuoi si può anche rifiutare senza provarla, dal pulsante accanto: non viene eseguita né segnata come applicata nel progetto, esce dall'elenco, dal numero sull'icona e dagli avvisi, e compare tra le Rifiutate, da dove Ripristina la riporta tra quelle da applicare. Se un'altra persona l'ha già applicata nel frattempo, sparisce dall'elenco; in caso di errore il riquadro lo dice e Dettagli mostra la risposta di Supabase. Non partono mai da sole. Dopo ogni push, se la nuova versione porta migrazioni non ancora applicate, l'icona dell'app in home mostra il numero sul menu Back-End Supabase e il proprietario riceve un avviso (e-mail e notifica) una volta per migrazione.

Accesso automatico. Per le app ospitate su App Drive con Richiede login, l'opzione Accesso automatico all'applicazione fa entrare chi apre l'app già collegato al suo login Supabase, con la stessa e-mail dell'account App Drive: nessuna seconda password. Chi non esiste ancora viene creato nel Supabase Auth del progetto (e-mail confermata). Funziona con il login standard di Supabase (supabase-js); le chiavi del progetto restano sul server di App Drive. Se nell'app ci si scollega, alla prossima apertura da App Drive si viene collegati di nuovo.

Le migrazioni si leggono dal repository GitHub collegato all'app (la cartella supabase/migrations non è nella build): un'app caricata solo come .zip non le mostra. Finché la funzione non è attiva sul server, si eseguono da Supabase con l'editor SQL o con supabase db push.

Collegare un database PostgreSQL

Per le piattaforme con un proprio database PostgreSQL (Neon, Railway, un server dell'azienda…) e senza Supabase: menu della piattaforma › Database PostgreSQL. Serve poter pubblicare la piattaforma.

  1. Un utente per App Drive. La pagina mostra i comandi SQL da eseguire nella console del database (o da far eseguire allo strumento AI): creano un utente che può solo leggere e aggiungere righe, con una password generata al momento e già inserita nel modulo.
  2. Il collegamento. Incolla l'indirizzo di connessione (postgresql://…) oppure compila host, porta, database, utente, password e schema (di solito public). Collega e verifica prova la connessione e conta le tabelle; solo se riesce il collegamento viene salvato.

Da sapere:

Collegare Firestore (Firebase)

Per le piattaforme che salvano i dati in Firestore: menu della piattaforma › Firebase (Firestore). Serve poter pubblicare la piattaforma.

  1. Una chiave per App Drive. Nella console Google Cloud del progetto Firebase apri IAM e amministrazione › Account di servizio, crea un account (ad esempio "appdrive") con il ruolo Utente Cloud Datastore, poi in Chiavi › Aggiungi chiave › Crea nuova chiave › JSON scarica il file. Funziona anche la chiave generata da Firebase (Impostazioni progetto › Account di servizio), che però dà accesso a tutto il progetto: è preferibile un account dedicato.
  2. La chiave. Scegli il file JSON (o incollane il contenuto) e, solo se il progetto ha più database Firestore, indica quale. Collega e verifica prova la chiave e conta le raccolte; solo se riesce il collegamento viene salvato.

Da sapere:

Controlli e correzioni del back end

Nelle pagine Database PostgreSQL e Firebase (Firestore), una volta collegato il database, la sezione Controlli confronta il database con il repository GitHub e indica in chiaro cosa sistemare. Controlla di nuovo ripete la verifica; i dati letti non vengono conservati.

Firestore

Per questi controlli l'account di servizio ha bisogno, oltre a Utente Cloud Datastore, dei ruoli Visualizzatore regole Firebase, Visualizzatore log, Visualizzatore Cloud Functions e Visualizzatore Firebase Authentication; per le correzioni, Amministratore regole Firebase, Amministratore indici Cloud Datastore e Amministratore Firebase Authentication, e per le funzioni Sviluppatore Cloud Functions e Utente account di servizio. Senza un ruolo il relativo controllo indica quale aggiungere (console Google Cloud › IAM).

PostgreSQL

L'utente di App Drive può solo leggere e aggiungere righe: per migrazioni e indici l'app chiede ogni volta l'indirizzo di connessione del proprietario del database, che viene usato solo per quella modifica e non viene salvato.

I controlli ripartono da soli ogni 6 ore e dopo ogni build da GitHub: quando trovano qualcosa da sistemare, l'icona della piattaforma in home mostra il numero, ripetuto sulla voce del database nel menu e, nella vista con le anteprime, come "Database da rivedere".

Con gli avvisi del back-end attivi, chi possiede la piattaforma riceve anche un'e-mail e una notifica quando questi controlli trovano un problema nuovo: migrazioni da applicare o non riuscite, Cloud Functions in errore, regole aperte, scadute o in scadenza entro 14 giorni, indici mancanti o in errore, indirizzi dell'app non autorizzati nel login, tabelle della Panoramica sparite. Ogni problema viene segnalato una volta sola; chi può pubblicare la piattaforma riceve la notifica. Il messaggio apre la pagina del database. Si disattivano come gli altri avvisi, in Account.

Per entrambi, Dati della Panoramica: campi usati dalle schede che risultano vuoti nella maggior parte dei dati recenti, e tabelle o raccolte non più presenti. Dove la soluzione è nel codice, Copia il prompt per l'AI prepara il testo da incollare nello strumento con cui è stata creata la piattaforma.

Utenti e livelli di accesso

Molte piattaforme hanno più livelli di accesso: amministratori che vedono e cambiano tutto, editor, semplici utenti. Dal menu della piattaforma (pressione lunga sull'icona), Utenti e livelli di accesso mostra quali livelli ha e chi ha quale, e ti fa cambiarlo.

App Drive trova da solo dove il login della piattaforma tiene il livello di ogni persona:

Se ne trova più di uno, scegli dal menu a tendina quello giusto. Tocca il livello di una persona per cambiarlo; se la piattaforma non elenca i valori possibili puoi scriverne un altro, uguale a come lo usa il codice. Solo quel valore cambia, nient'altro.

Login tramite App Drive. In cima alla pagina, l'interruttore dice se chi apre la piattaforma da App Drive entra da solo nel suo login (l'Accesso automatico) e permette di accenderlo o spegnerlo. C'è per le piattaforme Supabase e Firebase ospitate su App Drive con "Richiede login" attivo; con PostgreSQL la pagina spiega che non è disponibile (il login è quello scritto nel codice della piattaforma), ma i livelli si vedono e si cambiano lo stesso.

Chi può accedere tramite App Drive. Nella stessa scheda scegli chi viene autenticato senza password: Tutti gli utenti con accesso (proprietario, team e utenti con cui la piattaforma è condivisa; è la scelta predefinita), Solo i team selezionati, Solo gli utenti selezionati o Solo il proprietario. Il proprietario è sempre abilitato. Gli altri utenti accedono con le credenziali della piattaforma; su una piattaforma pubblica, se usano "Accedi con App Drive", ricevono un messaggio che spiega che il loro account non è abilitato.

Piattaforme pubbliche: "Accedi con App Drive". Se il server ha la funzione FEATURE_PUBLIC_AUTO_LOGIN attiva, l'Accesso automatico si può attivare anche su una piattaforma senza "Richiede login", che resta aperta a tutti:

Il proprietario della piattaforma personalizza il pulsante nella stessa scheda, sotto l'interruttore:

Al ritorno dall'accesso App Drive, finché la piattaforma non ha caricato la sessione, viene mostrata la schermata Accesso in corso… al posto del login della piattaforma (al massimo per qualche secondo).

Firebase, senza toccare il codice. Con Firebase l'Accesso automatico si accende solo da qui. App Drive cerca la persona per e-mail in Firebase Authentication (se manca la crea, con e-mail verificata), le dà il livello scelto e la fa entrare: la sessione arriva nel browser dove l'SDK di Firebase la cerca, prima che la piattaforma parta. La chiave web del progetto viene letta dai file della piattaforma. Servono: il server con FEATURE_FIREBASE_LOGIN, l'account di servizio con il ruolo Amministratore Firebase Authentication e il login di Firebase Authentication attivo nel progetto. Se nel browser c'è già un altro utente entrato con il login della piattaforma, Firebase tiene quello: basta uscire una volta.

Profilo di chi entra (Firebase). Prima di accendere l'interruttore, scegli il profilo con Configura: App Drive legge la collezione degli utenti della piattaforma (users, user o simili) e mostra i suoi campi.

Finché il profilo non è scelto, l'accesso automatico non si accende. Alla prima apertura, chi non ha ancora un profilo vede il riquadro Completa il tuo profilo con i campi scelti; Salva e continua crea il suo documento (con id uguale al suo uid). Senza campi da chiedere, App Drive lo crea subito, all'accesso.

Se non entra. Quando l'accesso automatico non riesce, la piattaforma mostra in alto un avviso di App Drive e sotto la persona, in questa pagina, compare il motivo con cosa fare (per esempio il ruolo mancante dell'account di servizio, o la chiave web che accetta solo alcuni siti). Verifica l'accesso automatico prova tutto dal server con il tuo account, come a un'apertura, e dice se funziona. Se funziona ma la piattaforma mostra comunque il suo login, di solito è la piattaforma che fa uscire chi non ha un profilo: configura il profilo qui sopra.

Chi entra da App Drive (Supabase e Firebase). Con l'Accesso automatico (Back-End Supabase, o l'interruttore qui sopra per Firebase), chi apre la piattaforma da App Drive entra nel suo login senza password. Nella sezione Accesso da App Drive scegli con che livello:

Sotto ogni persona compare l'esito del suo ultimo accesso: livello dato, oppure il motivo per cui non è stato dato. Molte piattaforme creano la riga del profilo solo quando l'app si apre la prima volta: in quel caso il livello resta in attesa e App Drive riprova ogni minuto per 24 ore, finché la riga c'è. Se la piattaforma non crea mai il profilo da sola (per esempio profili inseriti a mano), attiva Crea il profilo se manca: App Drive aggiunge la riga con la persona, il livello scelto e l'e-mail se la tabella la chiede. Se la tabella ha altre colonne obbligatorie che App Drive non sa riempire (un codice, l'azienda…), alla prima apertura della piattaforma la persona vede il riquadro Completa il tuo profilo (dal basso sul telefono, al centro sul computer) con solo quei campi: testo, numero, data, sì/no, oppure una scelta tra i valori ammessi o tra le righe della tabella collegata (per esempio le aziende). Salva e continua crea il profilo con il livello scelto e ricarica la piattaforma; Più tardi lo rimanda alla prossima apertura.

Campi del profilo (Supabase). Con Crea il profilo se manca acceso, Configura mostra le colonne della tabella dei profili: quelle che App Drive compila da sola (la persona, il livello, l'e-mail, i valori predefiniti del database), quelle obbligatorie (sempre chieste) e le altre, da chiedere se vuoi. I campi si preimpostano come per Firebase: sì/no, testo, numero, data (anche la data del primo accesso) o una scelta tra i valori ammessi dalla tabella (enum, vincoli CHECK, tabelle collegate); anche una colonna obbligatoria può essere preimpostata invece che chiesta. Senza configurazione App Drive chiede solo le colonne obbligatorie che non sa riempire, come prima.

Le persone vengono lette quando apri la pagina e non vengono conservate; ogni modifica resta nel registro attività. La usa chi può pubblicare la piattaforma.

Panoramica delle piattaforme (Hub)

Per i piani che la includono. La attiva Somio.

La Panoramica mette in una pagina le schede di più piattaforme: quanti ordini ci sono oggi, l'incasso del mese, le prossime consegne, lo stato di ogni applicazione. Si apre dal menu, alla voce Panoramica; nel browser è nel menu laterale. Non serve toccare il codice delle piattaforme.

Dove si trova. Nel menu (nel browser, il menu laterale) la voce Dashboard apre la Panoramica, la prima dashboard dell'organizzazione; con ▾ accanto al nome si passa alle altre dashboard o se ne crea una nuova. Flussi, Agenti AI, Sistemi aziendali e Tabelle di valori sono nella voce Dati e automazioni, con lo stato di ciascuno in breve.

Aggiungere una scheda. Aggiungi scheda (da telefono, + in alto) è l'unica porta:

Modificare, spostare, ridimensionare. Modifica in alto (da telefono, la matita) rende la pagina modificabile dove si trova: si trascina una scheda per spostarla (dalla maniglia ⠿ sul computer, tenendola premuta sul telefono) e se ne trascina l'angolo per allargarla a 2 o 3 colonne o renderla più alta; Fine per chiudere. Su ogni scheda, ⋯ sul computer o la pressione lunga sul telefono: Modifica la scheda, Duplica la scheda, Sposta prima o dopo, la Larghezza (1, 2 o 3 colonne) ed Elimina la scheda, o Togli dalla Panoramica per le schede pronte delle app; il menu è lo stesso in ogni dashboard.

Altezza delle schede. Le schede di una stessa riga hanno sempre la stessa altezza, quella della più lunga, fino a un massimo: quello che non ci sta sfuma in basso, e toccando la scheda si aprono tutte le righe. Una scheda Alta (nel menu, Altezza › Alta, o trascinandone l'angolo in Modifica) ha più spazio, e la sua riga con lei. Una scheda da sola sulla riga è alta quanto il suo contenuto. Le schede create prima delle dashboard (un numero o un elenco sui dati di una piattaforma o di un gestionale), con Modifica la scheda diventano schede come le altre, nella stessa posizione e con gli stessi dati, e si cambiano con le stesse domande.

Una scheda di una dashboard anche nella Panoramica. Nel menu di una scheda di un'altra dashboard, Mostra nella Panoramica la aggiunge in fondo alla Panoramica: è la stessa scheda, non una copia, e se la modifichi cambia in tutti e due i posti. Nella Panoramica ha sotto il titolo il nome della dashboard da cui viene (es. Da Vendite): toccandolo si apre quella dashboard. Lì mostra il periodo predefinito, senza i filtri della dashboard, e la vede solo chi può vedere la dashboard. Al posto di Elimina la scheda c'è Togli dalla Panoramica (anche dal menu della dashboard): la scheda resta nella sua dashboard. Se la elimini dalla dashboard, sparisce anche dalla Panoramica.

Le schede le gestiscono gli amministratori; per i clienti di un'agenzia la Panoramica la gestisce l'agenzia, e gli amministratori del cliente solo se l'agenzia lo permette in Limiti e permessi › Schede della Panoramica.

Trovare una scheda. Nella Panoramica ognuno può cercare per titolo o piattaforma, mostrare una sola piattaforma (menu Tutte le piattaforme) e scegliere la vista: per sezioni (come le ha organizzate chi gestisce la Panoramica) o per piattaforma. Questi filtri valgono solo per chi li usa.

Le schede mostrano i dati letti al momento dalle tue piattaforme; non ne viene conservata una copia.

Creare una scheda senza codice

Nella scelta delle schede, sotto ogni piattaforma: Nuova scheda.

  1. Dati: scegli da dove leggere. L'app propone ciò che trova:

    • le liste dei Dati nel cloud (es. "orders"): vanno attivati nella pagina della piattaforma, e la piattaforma va usata almeno una volta;

    • le tabelle di Supabase, se la piattaforma ha un progetto Supabase collegato (vedi Back-End Supabase).

    • le tabelle del database PostgreSQL della piattaforma, se collegato (vedi Collegare un database PostgreSQL in Database delle piattaforme).

    • le raccolte di Firestore, se la piattaforma lo ha collegato (vedi Collegare Firestore in Database delle piattaforme).

    Per ogni fonte vedi quanti elementi ha e quali campi, riconosciuti dai dati stessi (testo, numero, data, sì/no).

  2. Titolo e che cosa mostra: Quanti (un numero), Somma di un campo numerico (es. il totale degli ordini; con In euro è mostrato con il simbolo € e due decimali) o una Lista breve (testo della riga, dettaglio, ordine, da 3 a 10 righe).

  3. Filtra per (facoltativo): un campo data oggi, questa settimana, questo mese, da oggi in poi, prima di oggi; oppure un campo uguale a un valore (es. stato = "aperto", fatto = no).

  4. Per Supabase, autorizza la lettura: ogni volta che si apre la Panoramica vengono lette solo le colonne usate dalla scheda (al massimo le ultime 5.000 righe), senza conservarne una copia. Attenzione: la scheda conta tutta la tabella e la mostra a chi può aprire la piattaforma, senza le regole di accesso per persona di Supabase (RLS); per dati personali usa un filtro o una tabella di riepilogo.

La piattaforma non usa né i Dati nel cloud né Supabase? Nella nuova scheda, Copia il prompt per l'AI: incollalo nello strumento con cui è stata creata (Lovable, Bolt, v0…), pubblica la nuova versione e attiva i Dati nel cloud. Le sue liste compariranno qui.

Flussi tra le piattaforme

Se attivi sul server, con la Panoramica.

Un flusso collega due piattaforme: quando in una succede qualcosa (es. arriva un nuovo ordine), allora un'altra riceve i campi che scegli (es. compare una nuova attività). Nessuna AI e nessun codice: i dati passano sempre allo stesso modo, e il registro dice com'è andata.

I dati restano nelle tue piattaforme. Quando colleghi due app, il tuo spazio consegna dall'una all'altra solo i campi che hai scelto: viaggiano cifrati e vengono cancellati appena consegnati. Il registro mostra quando e con quale esito, non il contenuto.

Creare un flusso. Dati e automazioni › Flussi › Nuovo flusso: dai un nome, poi scegli Quando e Allora. Si apre una pagina con tutte le liste e le tabelle, divise per piattaforma: cerca per nome della tabella, della piattaforma o di un campo, oppure filtra per Dati nel cloud, Supabase, Sviluppatori.

Creazione guidata. Nuovo flusso procede un passo alla volta: Quando, Solo se (facoltativo, si salta), Allora, Che cosa passa e Verifica e attiva. Su un computer il riepilogo in parole resta a destra e si aggiorna mentre scegli.

La modifica di un flusso esistente resta in un'unica pagina.

Quando Allora
Nuovo elemento nella lista dei Dati nel cloud (es. un ordine aggiunto in "orders") Aggiungi un elemento alla lista dei Dati nel cloud di un'altra piattaforma (dati condivisi): come se qualcuno lo inserisse a mano; compare alla sua prossima apertura
Nuova riga nella tabella Supabase (controllata ogni minuto) Crea una nuova riga nella tabella Supabase: scegli che cosa scrivere in ogni colonna; le altre restano vuote o col loro valore predefinito

Sotto ogni scelta l'app spiega che cosa succederà, e in fondo Riepilogo riassume il flusso in una frase (es. "Quando in Ordini arriva un nuovo elemento in "orders", aggiungi in Attività un elemento a "tasks" con: titolo = "Consegna {cliente}"; fatto = no").

Una tabella può avviare un flusso solo se ha la data di creazione (created_at, inserted_at, created…) o un id numerico crescente: altrimenti non si sa quali righe sono nuove. Quelle senza compaiono in fondo come Non utilizzabili, con Copia il prompt per aggiungerla da incollare in Lovable o Bolt.

Poi, campo per campo, che cosa passa:

Scelta Esempio
Non passato Il campo resta vuoto.
Campo di partenza scadenza ← consegna (una data va solo in una data; tutto può andare in un testo).
Testo fisso responsabile ← "Magazzino".
Testo con i campi titolo ← "Prepara l'ordine {numero} per {cliente}".
Sì / No, Numero fisso fatto ← No.

I campi non scelti non escono dalla piattaforma di partenza. In una lista dei Dati nel cloud puoi anche aggiungere un campo che non c'è ancora; se gli elementi della lista hanno un id, il nuovo elemento riceve il successivo.

Da sapere.

Solo se (condizioni). Sotto Quando, Aggiungi una condizione: il flusso parte solo per i record che le rispettano tutte (fino a 5). Per ogni condizione scegli il campo, la regola e, se serve, il valore:

Tipo di campo Regole
Testo è, non è, contiene, è vuoto, non è vuoto (senza distinguere maiuscole e minuscole)
Numero è, non è, è maggiore di, è minore di, è vuoto, non è vuoto
Sì/No è sì, è no
Data è vuoto, non è vuoto

Esempio: solo se stato è "pagato" e totale è maggiore di 100. Le condizioni sono controllate prima della consegna: i record che non le rispettano non escono dalla piattaforma di partenza. Si possono cambiare anche dopo, modificando il flusso.

Quando cambia un campo. Dopo aver scelto la lista o la tabella di partenza, scegli Nuovo record (come sopra) oppure Modifica di un campo e il campo da seguire (es. stato). Il flusso parte quando quel campo di un record già presente cambia valore, una volta per ogni cambiamento; i record nuovi vengono solo memorizzati. Unito a una condizione diventa "quando lo stato diventa spedito".

Dove Che cosa serve
Lista dei Dati nel cloud Elementi con un campo id; si vede al salvataggio della pagina
Tabella Supabase o PostgreSQL Una chiave primaria; controllata ogni minuto (fino a 5.000 righe)
Raccolta Firestore Un campo con l'ora dell'ultima modifica (updatedAt): si leggono solo i documenti modificati, senza costi di lettura inutili

Per capire che cosa è cambiato App Drive conserva di ogni record solo un'impronta cifrata del campo seguito, mai il valore.

Aggiorna un record. Se l'arrivo è una tabella (Supabase, PostgreSQL o Firestore), sotto Allora scegli Crea un record oppure Aggiorna un record e indica come trovarlo: il campo della tabella di arrivo che deve essere uguale a un campo di partenza (es. codice = codice dell'ordine). Vengono modificati solo i campi scelti in Che cosa passa, mai cancellazioni; il campo usato per trovare il record non cambia.

Dall'esterno (webhook in arrivo). Un flusso può partire anche da un servizio che non è una tua piattaforma: il modulo contatti del sito, un pagamento Stripe, uno scenario di Zapier o Make. In Quando scegli Da fuori › Una chiamata da un servizio esterno, scrivi da dove arriva (es. "Modulo contatti") e dichiara i campi che invia, con il tipo (testo, numero, sì/no, data; fino a 30). Poi scegli Allora come per ogni flusso.

Al salvataggio l'app mostra una sola volta l'indirizzo segreto (https://<tuo-dominio>/hub/in/hin_…) con un esempio per provarlo: incollalo nel servizio che invia i dati.

Rileva i campi da una chiamata di prova. Invece di scrivere i campi a mano, premi il pulsante: l'app mostra un indirizzo da inserire nel servizio (es. Stripe › Sviluppatori › Webhook) e attende il primo evento di prova. Quando arriva, elenca i campi trovati, anche quelli annidati, con un esempio: scegli quelli che ti servono. L'indirizzo resta in ascolto 30 minuti e diventa quello del flusso, quindi non devi cambiarlo nel servizio. La chiamata ricevuta serve anche per Test.

Assistente

Se attivo sul server e per la tua organizzazione.

L'assistente prepara schede e flussi a partire da una richiesta scritta come la diresti a un collega: "le consegne di oggi e l'incasso del mese", "quando arriva un nuovo contatto, crea un'attività". Panoramica › Assistente (in alto).

Agenti AI (MCP)

Se attivo sul server, per chi gestisce la Panoramica.

Un agente AI come Claude (Claude Code, Claude Desktop, Cursor o un agente sviluppato dall'azienda) può usare i dati delle tue piattaforme con il protocollo standard MCP (Model Context Protocol): "quanti ordini sono arrivati oggi?", "elenca i contatti di Milano non ancora richiamati", "aggiungi un'attività per Rossi".

Creare un accesso. Dati e automazioni › Agenti AI (MCP) › Nuovo accesso:

Il token si vede una sola volta, con le istruzioni già pronte:

claude mcp add --transport http appdrive https://<tuo-dominio>/mcp \
  --header "Authorization: Bearer adm_…"

oppure, nei file di configurazione (.mcp.json, Cursor e simili):

{"mcpServers": {"appdrive": {"type": "http", "url": "https://<tuo-dominio>/mcp",
  "headers": {"Authorization": "Bearer adm_…"}}}}

Che cosa vede l'agente.

Strumento Che cosa fa
list_platforms Le piattaforme dell'accesso con liste, tabelle e nomi dei campi (senza valori)
read_records I record di una lista o tabella, i più recenti per primi (fino a 100), con campi e condizioni facoltativi
get_overview Le schede della Panoramica, come testo
add_record Solo con "aggiungere nuovi record": un nuovo record in una lista condivisa o in una tabella

Da sapere.

Sistemi aziendali (gestionali ed ERP)

Chi gestisce la Panoramica può collegare i gestionali dell'organizzazione. La funzione non fa parte dei piani standard: è disponibile nei piani che la includono. In Panoramica › Sistemi aziendali, con Collega un sistema, scegli prima il sistema: App Drive usa le impostazioni proprie di ciascuno.

Microsoft Dynamics 365 Business Central:

Oracle NetSuite:

Intuit QuickBooks Online (se attivo sul server):

Epicor Kinetic:

Microsoft Dynamics 365 Sales e Customer Service (Dataverse):

SAP (S/4HANA cloud e on-premise, ECC con SAP Gateway):

Altro servizio OData: qualsiasi servizio OData v2 o v4 (SAP Business One, SuccessFactors…), con le stesse autenticazioni di SAP.

Le credenziali sono cifrate e non sono più visualizzabili. Salva e verifica controlla subito la connessione; in caso di errore viene indicato il motivo (credenziali rifiutate, indirizzo errato, sistema non raggiungibile…). Entità e dati mostra il catalogo con una ricerca e, per ogni entità, un'anteprima delle prime righe, letta al momento e non conservata.

Se un sistema smette di funzionare. Ogni 6 ore App Drive verifica i sistemi collegati; se uno che funzionava non risponde più come dovrebbe (credenziali cambiate o scadute, collegamento QuickBooks revocato, sistema irraggiungibile), chi lo ha collegato (o gli amministratori) riceve un avviso per e-mail, al massimo uno al giorno, e l'evento è nel registro attività. La verifica periodica mantiene anche attivo il collegamento a QuickBooks.

Nella demo. "Prova la demo" mostra già un sistema aziendale, Business Central (demo), con clienti, articoli e ordini di vendita generati attorno alla data di oggi, e quattro schede nella sezione "ERP" della Panoramica. Non si collega a nulla: i dati sono creati dal server di App Drive. Si possono creare schede e flussi (anche verso il sistema: i record restano in memoria); non si può modificare, scollegare o aggiungere un sistema. Ogni notte tutto torna com'era.

Schede sui sistemi aziendali. Nella Panoramica, con Aggiungi scheda › Schede pronte delle app, ogni sistema collegato compare accanto alle piattaforme: Nuova scheda permette di scegliere un'entità (ad esempio "Business Partner" o "Account") e di creare un numero, una somma o un elenco, come per le altre fonti. Una scheda su un sistema aziendale richiede la tua autorizzazione esplicita, perché i dati letti sono visibili a tutti gli utenti dell'organizzazione che accedono alla Panoramica. I dati sono letti al momento, a pagine, fino a 5.000 record (con una breve memoria di un minuto) e non vengono conservati: numeri e somme sono esatti fino a quella soglia; oltre, la scheda mostra ad esempio "5.000+" e indica su quanti record è calcolata. Se il sistema non risponde, la scheda lo indica senza bloccare la Panoramica.

Aprire i record di una scheda. Toccando una scheda di un sistema aziendale si aprono i suoi record: quelli che la scheda considera (con lo stesso filtro e lo stesso ordine), con la ricerca e "Mostra altri". Toccando un record si vedono i suoi campi. Gli amministratori della Panoramica vedono tutti i campi del record; gli altri utenti solo quelli già mostrati dalla scheda. Con la scrittura attiva sul server (FEATURE_HUB_SYSTEMS_WRITE) gli amministratori possono anche modificare il record (vengono inviati solo i campi cambiati) o crearne uno con Nuovo record: si scrive subito nel sistema, solo nei campi che il sistema accetta, e l'operazione è riportata nel registro attività. Nessuna eliminazione.

Flussi che partono dai sistemi aziendali. In Flussi › Nuovo flusso, in Quando, ogni entità di un sistema collegato è un'origine: Nuovo record in "Customers" di Business Central avvia il flusso per ogni nuovo cliente (ad esempio "nuovo ordine confermato → attività nell'app del magazzino"); con le modifiche attive, anche quando cambia un campo. Il sistema viene letto ogni 5 minuti (fino a 5.000 record, solo i campi usati e la chiave); di ogni record App Drive conserva solo un'impronta cifrata, mai i dati, e i record già presenti alla creazione del flusso non lo avviano. Serve un'autorizzazione esplicita.

Flussi che scrivono nei sistemi aziendali. Con la funzione attiva sul server, in Flussi › Nuovo flusso la destinazione può essere un'entità di un sistema collegato, ad esempio Crea un record in "Sales orders" di Business Central: "nuovo ordine nell'app → ordine di vendita in Business Central", "nuovo contatto → cliente in NetSuite". Si scelgono i campi come per le altre destinazioni (un campo dell'origine, un testo fisso o composto, un numero); i campi che il sistema compila da sé (chiavi, date di modifica) non sono proposti. Il flusso richiede un'autorizzazione esplicita e crea solo nuovi record: nessuna modifica né eliminazione. Se il sistema rifiuta un record (un campo obbligatorio mancante, un valore non valido), il tentativo non viene ripetuto e il motivo compare nel registro dei flussi; se il sistema non risponde, il tentativo viene ripetuto per 24 ore. Sono supportati Business Central, NetSuite, Epicor, Dynamics 365 e gli altri servizi OData; SAP non ancora. Per la scrittura l'utente tecnico (o l'app) del sistema deve avere i permessi di creazione sulle sole entità usate.

Mantenere allineato un record. Se l'origine è una lista dei Dati nel cloud (con il campo id) o una tabella (con la chiave primaria) e sul server sono attive anche le modifiche nei flussi, la destinazione su un sistema offre Crea e mantieni allineato: il primo salvataggio di un record nell'app crea il record nel sistema; le modifiche successive ai campi usati dal flusso aggiornano quello stesso record (ad esempio "cliente nell'app → cliente in Business Central": cambia l'indirizzo nell'app, cambia in Business Central). App Drive ricorda il collegamento tra i due record conservando solo un'impronta cifrata del record dell'app e la chiave cifrata del record nel sistema. I record già presenti vengono creati alla loro prima modifica; un cambiamento in un campo non usato non invia nulla. Se il record è stato eliminato nel sistema, la modifica viene rifiutata (con il motivo nel registro) e non viene ricreato. Nessuna eliminazione viene mai inviata. Supportati: Business Central, NetSuite, QuickBooks (clienti e fornitori), Dynamics 365, Epicor e gli altri servizi OData v4. Per l'aggiornamento l'utente tecnico del sistema deve avere anche il permesso di modifica sulle entità usate. La scheda del flusso mostra quanti record sono allineati.

Schede e anteprime sono in sola lettura; si scrive solo con i flussi descritti sopra, se attivi. Si consiglia un utente tecnico dedicato con i soli permessi di lettura necessari. Il sistema deve essere raggiungibile da internet (per i sistemi interni alla rete aziendale è in sviluppo un connettore dedicato). Per SAP, verifica con il tuo referente che l'accesso da applicazioni esterne sia coperto dalle tue licenze. Collegamenti, modifiche, verifiche, anteprime e schede sono riportati nel registro attività.

Schede e dashboard

Una scheda può unire i dati di più sorgenti: le liste dei Dati nel cloud, le tabelle di Supabase, PostgreSQL o Firestore e le entità dei sistemi aziendali, anche di sistemi diversi. Esempi: le categorie di Business Central con i loro prodotti; gli ordini dell'app con la città del cliente presa dal gestionale; il venduto del mese rispetto al mese prima.

Creare una scheda con l'editor completo. Da Crea una scheda › Opzioni avanzate. L'editor ha tre passi e l'anteprima sempre visibile:

  1. Dati. Scegli i dati di partenza (una riga per ogni record), poi Collega altri dati (al massimo 4 sorgenti):

    • App Drive propone il collegamento dai nomi dei campi (es. CategoryID con CategoryID);
    • scegli Un record per riga (es. per ogni prodotto la sua categoria: i suoi campi si aggiungono alla riga) o Più record per riga (es. per ogni categoria i suoi prodotti);
    • l'anteprima dice quante righe trovano il loro record (es. 8 righe su 8). I valori si confrontano senza badare a spazi, maiuscole e zeri iniziali.

    Tra le sorgenti ci sono anche le tabelle di valori inseriti a mano (vedi sotto).

  2. Calcola.

    • Campi calcolati (fino a 5), con una formula: a.prezzo - a.costo, round(a.totale * 1.22; 2), days(a.scadenza) (giorni da una data a oggi), if(a.totale > 1000; "grande"; "piccolo"), band(a.totale; 100; 500; 1000) (fasce), concat, year, month, min, max, abs. È un linguaggio chiuso, mai codice eseguito: un valore mancante dà un campo vuoto, non un errore.
    • Filtri: uguale, diverso, contiene, è uno tra (a, b, c), maggiore, minore, tra (da;a, anche tra due date), vuoto, è chi guarda (il campo e-mail è quello di chi apre la dashboard: "i miei record") e i periodi: oggi, settimana, mese, ultimi 7, 30 e 90 giorni, trimestre, anno, mese scorso, anno scorso, da oggi in poi, prima di oggi.
    • Raggruppa per un campo; se è una data, per giorno, settimana, mese, trimestre o anno (i periodi senza dati compaiono vuoti, così l'andamento non salta). Colonne: un secondo raggruppamento, per la tabella pivot e i grafici a più serie (es. agenti × mese).
    • Totali (fino a 6): conteggio, somma, media, minimo, massimo, valori distinti, rapporto % tra due totali (es. margine su venduto) e quota sul totale %.
    • Ordinamento, la data che segue il periodo della dashboard e quale campo segue ciascun filtro della dashboard.
  3. Mostra.

    • Numero, con il confronto con il periodo precedente, l'andamento degli ultimi sei mesi e le soglie (verde, giallo, rosso: rosso oltre il giallo se più alto è peggio, sotto se più basso è peggio).
    • Obiettivo (barra verso un valore).
    • Lista e Gruppi (ogni gruppo con i suoi record sotto).
    • Tabella (fino a 6 colonne, ordinabile toccando l'intestazione, totali in fondo, righe colorate secondo le soglie).
    • Pivot (righe × colonne con i totali).
    • Grafico: barre, barre affiancate o impilate, linee, area, torta; più serie con Altri valori o con le colonne scelte in Calcola.
    • Formato dei numeri per ogni totale: valuta (€), percentuale, intero, due decimali, compatto (12,4k).
    • Larghezza nella dashboard (1, 2 o 3 colonne) e scheda alta.

    Una scheda può essere anche una nota di testo (grassetto, elenchi con - , titoli con # ) senza dati.

Serve l'autorizzazione alla lettura dei campi usati, mostrati insieme a chi vede la scheda. Toccando una scheda si aprono le sue righe, con la ricerca, coerenti con la scheda: in alto il grafico o il numero, intero; per una scheda a gruppi, ogni gruppo con tutti i suoi record sotto. Toccando una barra, una fetta o un gruppo (nella scheda o nella pagina delle righe) restano solo le righe di quel gruppo (drill-down), con in alto Solo: … e la × per tornare a tutte. Dalle righe, Esporta in CSV (separato da ;, si apre in Excel; per una scheda a gruppi, una riga per record con i valori del suo gruppo). Nessun dato viene copiato: le sorgenti sono lette a ogni apertura (con una memoria di un minuto, fino a 5.000 record per sorgente).

Dashboard. Dashboard › ▾ accanto al nome: oltre alla Panoramica, più dashboard per reparto o per ruolo, ognuna con nome, icona e chi la vede: tutta l'organizzazione, i team scelti o solo chi l'ha creata.

Ognuno vede una scheda solo se può aprire le piattaforme da cui legge; i dati dei sistemi aziendali secondo il piano dell'organizzazione.

Tabelle di valori. Dati e automazioni › Tabelle di valori: piccole tabelle per i valori che non stanno in nessun sistema, come gli obiettivi per agente, il budget mensile o un listino (fino a 12 colonne di testo, numero o data e 500 righe). Le righe si scrivono o si incollano da Excel. Si usano come sorgente di una scheda e si collegano agli altri dati con un campo comune (es. obiettivo per agente accanto al venduto per agente). I valori sono conservati cifrati; una tabella usata da una scheda non si può eliminare.

Schede, dashboard e tabelle le crea chi gestisce la Panoramica; ogni creazione, modifica, apertura ed esportazione delle righe è nel registro attività. Funzione attivabile con FEATURE_HUB_VIEWS.

Dati preparati e misure. Dati e automazioni › Dati preparati: i dati si uniscono una volta sola, con un nome, e poi ogni scheda li usa come una sorgente qualsiasi. Per esempio "Ordini con cliente" sono gli ordini del gestionale, ognuno con la città e l'agente del suo cliente, senza gli annullati.

Una misura può anche essere una Formula di altre misure (es. Margine % = (Ricavi − Costi) / Ricavi × 100): si scrive toccando le misure da inserire.

In Crea una scheda i dati preparati compaiono per primi, e le schede proposte usano le loro misure ("Venduto per mese", "Venduto per città del cliente"). I dati restano nelle loro sorgenti e si leggono a ogni apertura, come per le schede; dati preparati usati da una scheda non si possono eliminare. Funzione attivabile con FEATURE_HUB_DATASETS.

Storico delle misure. Nei dati preparati, Storico › Conserva lo storico delle misure: ogni giorno si conservano i valori delle misure (il venduto, gli ordini, la giacenza, il saldo dei clienti), mai le righe, cifrati e per il tempo scelto (3 mesi, 1 anno, 2 anni). Così si vede come cambiano nel tempo anche i numeri che il gestionale non data, come giacenze e saldi. Il valore di oggi è registrato subito; i giorni passati non si possono ricostruire. In Crea una scheda compare "… · storico", con le misure giorno per giorno. Spegnendo lo storico, i valori registrati sono cancellati subito. Funzione attivabile con FEATURE_HUB_HISTORY.

Per sviluppatori: manifesto, script e webhook

Chi sviluppa le piattaforme può anche dichiarare schede, eventi e azioni in un file appdrive-hub.json accanto a index.html (le schede leggono i Dati nel cloud):

{
  "version": 1,
  "cards": {
    "ordini-oggi": {
      "title": {"it": "Ordini di oggi", "en": "Today's orders"},
      "source": "cloud:ordini",
      "template": "metric",
      "where": {"field": "consegna", "is": "today"},
      "label": {"it": "ordini", "en": "orders"}
    },
    "prossime-consegne": {
      "title": "Prossime consegne",
      "source": "cloud:ordini",
      "template": "list",
      "where": {"field": "consegna", "is": "future"},
      "sort": {"field": "consegna"},
      "item": {"title": "cliente", "detail": "consegna"},
      "limit": 5
    }
  }
}
Campo Significato
source cloud: seguito dalla chiave con cui l'applicazione salva i dati nel browser (localStorage). Il valore deve essere JSON: una lista di oggetti, un oggetto di oggetti o un numero.
path Facoltativo: dove si trova la lista dentro il JSON ("ordini", "dati.ordini").
template metric (un numero) o list (una breve lista).
where Facoltativo: {"field": "...", "is": "today"} (anche week, month, future, past) per le date, oppure {"field": "...", "equals": "aperto"}.
sum Per metric: somma questo campo invece di contare gli elementi.
sort, limit Per list: ordine ("desc": true per il contrario) e righe mostrate, da 1 a 10.
item Per list: il campo del titolo e, se vuoi, quello del dettaglio.
title, label Testi in un'unica lingua o {"it": ..., "en": ...}.
<script src="/__appdrive/hub.js"></script>
// Piattaforma di partenza: quando succede, lo dice (esce solo ciò che i flussi usano).
AppDrive.emit('ordine.creato', { numero: 1042, cliente: 'Rossi', consegna: '2026-10-21' });

// Piattaforma di arrivo: che cosa fare quando arriva l'azione.
AppDrive.on('attivita.crea', async (dati, info) => {
  // info.id è unico: serve a non creare doppioni.
  await salvaAttivita({ ...dati, rif: info.id });
});

Se la funzione dà errore la consegna viene ritentata più tardi (al massimo 5 volte). Senza flussi attivi, emit non invia nulla.

Agenzie partner e clienti

Riservato alle agenzie partner, previa attivazione.

Come diventare partner. Se la tua organizzazione usa già App Drive, un amministratore apre il menu ⋯ › Diventa partner (dove la funzione è disponibile) e:

  1. inserisce i dati dell'agenzia: ragione sociale, partita IVA dell'Unione europea, sede, referente ed e-mail di fatturazione;
  2. legge il contratto di partnership, lo accetta e firma con nome e cognome;
  3. preme Firma e diventa partner: l'attivazione è immediata, sul piano Partner Start (vedi Piani e abbonamento). Durante la beta non si paga nulla.

La partita IVA è controllata subito nel formato e poi sul servizio europeo VIES; se VIES non risponde la verifica si ripete ogni giorno, senza bloccare nulla. Lo stato è in Clienti › Profilo partner (icona in alto), con il contratto firmato. Il collegamento a Stripe per incassare dai clienti si fa dopo, solo quando serve (Clienti › Incassi dai clienti): il primo cliente si crea anche senza.

Da lì l'organizzazione può tornare cliente semplice, purché non abbia spazi cliente né un abbonamento Partner Start attivo. Somio può sospendere la partnership (i clienti esistenti continuano a funzionare, ma non se ne possono aggiungere di nuovi né chiedere nuovi pagamenti) o revocarla, sempre indicando il motivo, che compare in Profilo partner.

Se non usi ancora App Drive, richiedi l'adesione dal modulo della pagina principale scegliendo Programma partner (agenzie), oppure scrivi a tickets@somio.it.

Dal menu ⋯ › Clienti l'agenzia gestisce i propri clienti in autonomia:

Modelli di cliente. Dal menu di un cliente già configurato, Salva come modello memorizza limiti e permessi, contratto e canone e pagamenti una tantum. In Aggiungi cliente, Modello di partenza crea il nuovo cliente già configurato allo stesso modo.

Incassi direttamente in App Drive. Se previsto dall'attivazione, in Incassi dai clienti l'agenzia collega il proprio account Stripe (una procedura guidata da Stripe, una volta sola) e redige i propri Contratti; per ciascun cliente configura quindi Contratto e canone e Pagamenti una tantum (ad esempio l'attivazione). Il cliente deve firmare il contratto e saldare gli importi prima di accedere alle applicazioni; in caso di mancato pagamento l'accesso viene sospeso automaticamente. Gli incassi sono accreditati sul conto Stripe dell'agenzia; le firme sono consultabili in Firme.

Per ogni cliente l'agenzia stabilisce inoltre Limiti e permessi: il numero di piattaforme pubblicabili dal cliente (con 0 pubblica solo l'agenzia), il numero massimo di utenti e se il cliente può invitare nuovi utenti, modificare la personalizzazione o configurare le integrazioni. I nuovi clienti nascono con personalizzazione e integrazioni gestite dall'agenzia. I limiti sono riportati nel contratto che il cliente firma e il cliente visualizza, sotto il proprio nome, quello dell'agenzia.

La fatturazione è centralizzata: le applicazioni dei clienti sono incluse nell'abbonamento "A consumo" o "Partner Start" dell'agenzia (vedi Piani e abbonamento › Partner Start). I clienti non visualizzano la sezione Abbonamento; in caso di mancato pagamento da parte dell'agenzia, i clienti vengono sospesi insieme a essa e riattivati al saldo.

Report mensile ai clienti

Per le agenzie partner, dove disponibile.

Il 1° di ogni mese App Drive prepara per ogni cliente il report del mese appena finito, con il marchio dell'agenzia (nome, colore e logo; mai quello di App Drive): piattaforme, aperture (con il confronto sul mese precedente), dispositivi, nuove versioni, errori, segnalazioni e problemi risolti. Contiene solo totali: nessun nome o indirizzo e-mail di chi usa le piattaforme.

Da ⋯ › Report mensili l'agenzia:

Il cliente riceve un'e-mail con il marchio dell'agenzia e il PDF allegato, e trova i report in ⋯ › Report mensili, dove può premere Tutto chiaro e lasciare un commento all'agenzia.

Errori e utilizzo con l'AI

Statistiche di utilizzo con tutti i piani; errori, problemi e AI con i piani Pro e "A consumo". Per le applicazioni ospitate da App Drive.

App Drive monitora le applicazioni automaticamente, senza installazioni né modifiche al codice. Per ogni applicazione ospitata rileva le aperture e raccoglie gli errori generati dalle pagine nel browser.

Menu della piattaforma › Errori e utilizzo:

Per impostazione predefinita errori, segnalazioni e utilizzo sono visibili al proprietario e a chi può modificare la piattaforma. In Condivisione e accessi › Monitoraggio il proprietario può attivare Condividi errori e utilizzo: anche le persone e i team con "Può vedere" consultano la dashboard, in sola lettura (senza analisi AI, correzioni o cambi di stato).

Dal menu ⋯ › Stato delle app è disponibile il confronto tra tutte le applicazioni: in evidenza quelle con problemi urgenti, con aperture, errori e andamento delle ultime due settimane. In presenza di nuovi errori il menu ⋯ mostra un indicatore e la voce ne riporta il numero: selezionandola si accede agli errori (direttamente a quelli dell'applicazione, se è una sola) e il contatore si azzera.

Nel menu di ogni applicazione, Errori e utilizzo e Segnalazioni dal sito (SDK) sono raggruppati nella sezione Monitoraggio.

Diagnosi della build

Se una build da GitHub non va a buon fine, in GitHub e pubblicazione accanto alla build compare il comando Diagnosi: l'AI analizza il log e illustra la causa e le azioni consigliate. Se manca una variabile di build, è possibile aggiungerla direttamente (Aggiungi seguito dal nome della variabile) e confermare con Salva e ricompila; se è necessario modificare il codice, viene fornito il prompt per lo strumento di sviluppo e il comando Correggi su GitHub: l'AI prepara la modifica su un ramo e apre la pagina della pull request, da accettare con un clic.

Torna alla versione precedente

Se dopo una nuova versione gli errori aumentano nettamente rispetto alla precedente, in Errori e utilizzo compare l'avviso con Torna alla versione N: la versione precedente torna online subito, per tutti, mentre si corregge. La versione attuale resta salvata.

Limiti dell'AI

Per tenere sotto controllo i costi, le richieste all'AI (analisi degli errori, diagnosi, correzioni, istruzioni sui segreti) hanno un limite mensile per organizzazione e uno giornaliero per persona. Le risposte già pronte, come la diagnosi di una build già analizzata, non contano. L'utilizzo del mese è visibile in Integrazioni › AI, insieme alle richieste che hai fatto oggi, e il conteggio si azzera il primo del mese.

Chi gestisce il server trova in Server › Organizzazioni il riquadro AI questo mese: richieste e token usati su tutto il server, con i limiti predefiniti. Accanto a ogni organizzazione compare il suo utilizzo; dal pulsante ⋯ › Limite AI mensile si assegna un limite diverso (vuoto per tornare al predefinito, 0 per nessun limite).

L'AI e i dati

L'AI utilizzata è Claude di Anthropic. Riceve log, errori e (per le pull request) i file del progetto esclusivamente su richiesta esplicita; i valori delle variabili di build non lasciano mai App Drive. Gli amministratori possono disattivarla per l'intera organizzazione in Integrazioni › AI. Gli errori sono conservati per 40 giorni, le segnalazioni per 90; i visitatori sono anonimi (un identificativo casuale del browser) e gli utenti sono identificati solo nelle applicazioni con login.

Segnalazioni e integrazioni

Disponibile con il piano Pro.

Il pulsante Segnala

Su ogni piattaforma, nella barra di App Drive esterna alla piattaforma stessa, è disponibile il pulsante Segnala. L'utente seleziona Bug o Modifica, descrive il caso e conferma con Invia. App Drive aggiunge automaticamente piattaforma, pagina, autore, schermo e browser, rendendo superflui screenshot e descrizioni manuali del contesto.

Il foglio Segnala

Destinazione delle segnalazioni

In Integrazioni (amministratori) inserisci l'indirizzo di un webhook e seleziona Invia una prova:

Strumento Configurazione
Slack Crea un Incoming Webhook per il canale e inseriscine l'indirizzo: il messaggio arriva già formattato.
Zapier o Make Utilizza Webhooks by Zapier – Catch Hook o il modulo Custom webhook, quindi inoltra la segnalazione alla destinazione desiderata: Trello, Linear, Jira, e-mail o fogli di calcolo.
n8n o un server dedicato Riceve un JSON con kind, message, app, user e context, firmato con il segreto indicato nella pagina.

In assenza di webhook, le segnalazioni sono inviate per e-mail all'autore della pubblicazione. Se un invio non riesce, App Drive lo ritenta per alcuni secondi e ripiega quindi sull'e-mail; l'esito dell'ultimo invio è riportato in Integrazioni.

Integrazioni

Piani e abbonamento

Base Pro A consumo
Prezzo (beta, IVA esclusa) 99 €/mese 249 €/mese 0,47 € per piattaforma al giorno, senza canone
Piattaforme per organizzazione fino a 7 fino a 17 senza limite prefissato
Spazio per organizzazione 1 GB 3 GB 10 GB
Portale con marchio aziendale, hosting, GitHub e .zip ✓ ✓ ✓
Applicazioni da indirizzo, Vercel e Netlify ✓ ✓ ✓
Utenti, team, condivisione, permessi, più organizzazioni ✓ ✓ ✓
Pulsante Segnala e webhook — ✓ ✓
Dati nel cloud — ✓ ✓
Aperture e utilizzo di ogni applicazione ✓ ✓ ✓
Diagnosi con l'AI di build ed errori, con correzione — ✓ ✓

Nessun costo per utente. Il prezzo della beta resta garantito per le aziende che aderiscono ora.

A consumo

Indicato per un numero ridotto di applicazioni o per progetti temporanei: nessun canone, si pagano le piattaforme attive giorno per giorno, con fattura a fine mese. Il conteggio giornaliero comprende tutte le piattaforme dell'organizzazione (anche quelle archiviate, che restano online per gli altri utenti); eliminata una piattaforma, l'addebito cessa dal giorno successivo. Le funzionalità sono quelle del piano Pro. In Abbonamento sono riportati il prezzo per piattaforma al giorno, le piattaforme attive e la stima del periodo e quella a fine mese, se nulla cambia; l'importo esatto è indicato nella fattura di Stripe. Una piattaforma attiva tutto il mese costa circa 14 € (0,47 € × 30 giorni), calcolati a giorni.

Piano su misura

Un'organizzazione può avere un piano concordato, con funzioni e limiti propri: le funzioni si attivano appena il piano è assegnato. In Abbonamento il piano compare con il suo nome e, a seconda dell'accordo:

Partner Start

Riservato alle agenzie partner: un canone fisso che include alcune piattaforme (contando anche quelle dei clienti) e un numero di spazi cliente; le piattaforme oltre quelle incluse si pagano a consumo, circa 14 € per app al mese, calcolati a giorni. Le funzionalità sono quelle del piano Pro. Canone e quantità incluse sono indicati in Abbonamento e possono variare nel tempo.

Durante e dopo la beta

Gli avvisi sono mostrati ai soli amministratori, gli unici abilitati al pagamento.

Pagamento e gestione dell'abbonamento

In Abbonamento (amministratori, nel browser) si sceglie tra Base, Pro e A consumo e si procede al pagamento tramite Stripe: App Drive non ha accesso ai dati della carta. Da Carta, fatture e disdetta si aggiornano il metodo di pagamento, si scaricano le ricevute o si disdice l'abbonamento. Il cambio di piano è possibile in qualsiasi momento: la differenza viene riportata nella fattura successiva.

Se un pagamento non va a buon fine, Stripe lo ritenta per alcuni giorni e le piattaforme restano online. Se l'abbonamento resta insoluto o viene disdetto, l'organizzazione viene sospesa. Per riattivarla, seleziona Paga e riattiva dalla pagina di accesso: al completamento del pagamento tutto torna disponibile.

Il passaggio da Pro a Base non comporta la cancellazione di dati: impedisce soltanto la creazione di nuove piattaforme e i caricamenti oltre i limiti del piano Base.

Abbonamento

Nelle app per iPhone e Android è visibile solo lo stato dell'abbonamento: i pagamenti si effettuano dal browser.

Account

In Account (nel browser in basso a sinistra; su smartphone la prima voce del menu ⋯):

Verifica in due passaggi

Facoltativa, per ogni account: dopo la password l'accesso chiede anche un codice di 6 cifre che cambia ogni 30 secondi, generato da un'app sul telefono (Google Authenticator, Microsoft Authenticator, 1Password, Authy…). Chi ruba la password da sola non entra.

  1. Account › Verifica in due passaggi › Attiva (o Attiva nell'invito in cima alla home, che compare finché non è attiva; Più tardi lo nasconde fino alla prossima apertura dell'app).
  2. Nell'app di autenticazione scegli Aggiungi e inquadra il codice QR (o inserisci la chiave a mano).
  3. Scrivi il codice che l'app mostra e premi Verifica e attiva.
  4. Salva i 10 codici di recupero (es. nel gestore delle password): ognuno vale una volta al posto del codice dell'app, se perdi il telefono. Non vengono più mostrati; dalla stessa pagina se ne creano di nuovi.

Vale per l'app, le pagine di accesso delle piattaforme private e l'accesso unico (OIDC); per lo stesso account in più organizzazioni basta attivarla una volta. Con la verifica attiva il link di accesso via e-mail non viene inviato e, per entrare in un'altra organizzazione, il codice d'invito si inserisce dall'app dopo l'accesso.

I tuoi dati: esportazione, backup, stato del servizio

Esporta i dati (amministratori, menu ⋯ › Esporta i dati, dove disponibile): un file zip con persone e ruoli, team, piattaforme con le loro versioni (e lo zip della versione online, pronto da pubblicare altrove), dati nel cloud, segnalazioni, contratti firmati e registro attività. Non contiene password, chiavi o segreti. Sul computer il download parte da solo; sul telefono si condivide un link da aprire nel browser, valido 30 minuti. Si può esportare una volta ogni 10 minuti e ogni esportazione compare nel registro attività. Le agenzie partner esportano i dati di ogni cliente da Clienti › cliente › Esporta i dati.

Backup. Ogni notte database e file vengono copiati sul server e, cifrati, in un secondo data center della stessa regione (UE o USA): 30 copie giornaliere e 12 mensili. L'integrità è verificata ogni settimana e una prova di ripristino completa è fatta ogni mese.

Stato del servizio. Un servizio esterno controlla ogni minuto che App Drive funzioni e la pagina di stato lo mostra in tempo reale; per disservizi e manutenzioni programmate gli amministratori ricevono un'e-mail. Impegni di disponibilità, tempi di risposta del supporto e uscita dal servizio sono in Continuità e SLA.

Sicurezza e privacy

I dettagli sono riportati nell'informativa privacy.

Domande frequenti

Come si invita direttamente in un team una persona esterna all'organizzazione? Dal team seleziona Aggiungi membro › Aggiungi tramite e-mail: se l'organizzazione consente agli admin dei team di invitare, App Drive genera un codice che registra la persona e la inserisce direttamente nel team. In caso contrario, un amministratore la invita prima da Utenti e inviti e successivamente la si aggiunge al team.

Ogni utente deve appartenere a un'organizzazione? Sì: ogni account appartiene almeno all'organizzazione del codice di invito. Con lo stesso account è poi possibile accedere ad altre organizzazioni.

I clienti dell'agenzia devono sottoscrivere un abbonamento? No: il prezzo è per agenzia, con clienti illimitati. L'agenzia paga l'abbonamento della propria organizzazione; le organizzazioni dei clienti attivate per suo conto non ricevono avvisi di pagamento.

È possibile pubblicare un'applicazione con backend? App Drive ospita il frontend (sito statico). Il backend resta su Supabase, Firebase o su un server dedicato; le chiavi pubbliche si forniscono tramite le variabili di build.

Se è sufficiente salvare i dati che l'applicazione conserva nel browser, sono disponibili i dati nel cloud.

Cosa visualizza chi apre il link di una piattaforma riservata? Una pagina di accesso con il marchio dell'organizzazione. Accedono soltanto gli utenti autorizzati: l'autore della pubblicazione e le persone e i team con cui la piattaforma è condivisa.

Un'applicazione su Vercel (o Lovable) è stata resa riservata: perché l'indirizzo del sito resta accessibile? Perché il sito non è ospitato da App Drive: il login protegge il link App Drive, non l'indirizzo diretto. Per una protezione completa utilizza Ospita su App Drive.

Un'applicazione sviluppata con l'AI perde i dati al cambio di dispositivo. Come si risolve? Attivando i dati nel cloud (piano Pro): senza modificare l'applicazione, i dati vengono conservati su App Drive.

Cosa accade ai dati in caso di mancato pagamento? L'organizzazione viene sospesa senza alcuna cancellazione: al pagamento tutto torna disponibile. Per richiedere la cancellazione completa dei dati, scrivi a tickets@somio.it.

Le piattaforme funzionano anche offline? Su smartphone sì, se la piattaforma è stata resa disponibile offline. I dati che la piattaforma recupera da un proprio server richiedono comunque la connessione.

Assistenza Scrivi a tickets@somio.it.