Consegna

Un progetto solo. Più modi di consegnarlo.

La stessa interfaccia e gli stessi dati arrivano alle persone come sito sul tuo dominio e come app Android da installare; e quando c'è del codice nativo da compilare, lo costruisce GitHub sul tuo repository. Non sono prodotti da tenere allineati: è lo stesso, impacchettato più volte.

Un progetto solo, tre modi di consegnarlo: il sito sul tuo dominio, un'app Android e il codice nativo costruito sul tuo GitHub.Il tuo progettouno soloIl sito sul tuo dominioche si trova su GoogleUn'app Androiduna finestra sul sitoIl codice nativocostruito sul tuo GitHub
Le consegne

Scegli dove deve arrivare

Cambia il pacchetto, non il prodotto. Un'app Android è una FINESTRA sul sito del progetto: apre il suo indirizzo, quindi quello che si vede dentro è quello che si vede nel browser — ed è per questo che una correzione vale in tutte le consegne nello stesso istante.

Quello che ottieni
app.tuodominio.it

L'applicazione sul tuo dominio, che si apre da un indirizzo e non si installa.

Le pagine pubbliche di un progetto sono HTML congelato al momento della pubblicazione: arrivano complete al visitatore e ai motori di ricerca, senza aspettare che parta niente.

Come nasceÈ la consegna di partenza: ogni pubblicazione ne fa una versione nuova.
Chi la vedeChiunque abbia l'indirizzo, con l'accesso che hai dichiarato.
AggiornamentoImmediato: al ricaricare c'è la versione nuova.
Il dominioIl tuo, col certificato che si sistema da sé.
TrovabileLe pagine pubbliche arrivano già scritte a chi cerca.
Quello che ottieni
app-release.apk

Un'app Android da installare, con l'icona del progetto e il suo nome.

L'app è una FINESTRA sul sito del progetto: quello che si vede dentro è quello che si vede nel browser, perché è la stessa cosa. Non c'è una seconda versione da tenere allineata — e una correzione vale in tutte le consegne nello stesso istante. La firma è una chiave per progetto, generata una volta sola: Android riconosce un aggiornamento da quella.

Come nasceDa Superfici → Nuova app: un repository costruito da un modello che apre una superficie del progetto.
Cosa c'è dentroIl sito del progetto: stessa sessione, stessi dati, stesso aspetto.
AggiornamentoNessuno da fare: pubblichi il progetto e le copie installate lo vedono.
NotificheArrivano anche ad app chiusa.
Come si consegnaUn file che si scarica dalla sezione Repository, con un link firmato.
Senza reteUna schermata che lo dice, e un tasto per riprovare.
Quello che ottieni
repos/<nome>.json

Codice nativo, in qualsiasi linguaggio — Android scritto a mano, iOS, Flutter, Python, un binario — costruito dai runner di GitHub.

Un'app per iPhone si può firmare soltanto su un Mac, e i runner di GitHub ne hanno: per quel mondo il repository è l'unica strada. Per tutto il resto è la strada giusta quando c'è qualcosa da COMPILARE: una macchina è un processo che gira, non un posto dove si costruisce.

Come nasceUn file del progetto dichiara il repository; la piattaforma lo crea già con un workflow che compila al primo colpo.
Dove staSul GitHub della tua organizzazione se l'hai collegato prima, altrimenti sull'account della piattaforma.
Gli ambientiUn codice solo: prova e pubblicato sono un parametro della build, non due repository.
Cosa esceResta su GitHub accanto al run; la piattaforma lo porta dove la dichiarazione dice — fra i documenti, fra le immagini, o allo slot di un'app.
I costiI minuti di costruzione sono dell'account che ospita il repository.
Un progetto solo

Le consegne escono dalla stessa interfaccia e dagli stessi dati: non ci sono prodotti da mantenere allineati.

Il percorso

Dal lavoro alla consegna

Lavori
L'ambiente di provawork/
Pubblichi
Una versione numeratareleases/<n>/ · current.json
Arriva
Nel browsersul tuo dominio
App Androiduna finestra sul sito
Codice nativosul tuo GitHub
  1. Lavori
    L'ambiente di provawork/
  2. Pubblichi
    Una versione numeratareleases/<n>/ · current.json
  3. Arriva
    Nel browsersul tuo dominio
    App Androiduna finestra sul sito
    Codice nativosul tuo GitHub
Fili viola: lavori sull'ambiente di prova · fili ambra: ogni consegna parte dalla stessa versione pubblicata
Le app installate

Non c'è niente da aggiornare

Un'applicazione consegnata come file ha di solito un problema che il web non ha: le copie in giro. Qui non ce l'ha, perché il pacchetto non contiene il prodotto — lo apre.

Una finestra, non una copia

Il pacchetto apre l'indirizzo del progetto. Dentro c'è il sito: stessa sessione, stessi dati, stesso aspetto.

Pubblichi, e basta

La prossima volta che si apre, l'app installata mostra quello che hai pubblicato. Nessuna build da rifare, nessun aggiornamento da mandare in giro.

Senza rete, lo dice

Una schermata che spiega che serve una connessione, e un tasto per riprovare. È l'unica pagina che il pacchetto porta di suo.

Di ogni app escono due costruzioni: una che apre l'ambiente di lavoro e una che apre quello pubblicato. Identiche, tranne l'indirizzo, e installabili una accanto all'altra. L'indirizzo è quello stabile del progetto: rinominarlo non rompe le copie già installate.

Il dominio

Tre passi, e il certificato non lo pensi più

Collegare un dominio è la parte che di solito costa una mattinata a qualcuno che sa farlo. Qui sono due record da copiare e un'attesa che si guarda.

  1. Scrivi il dominioQuello che hai già, oppure un sottodominio: la piattaforma ti dice quale forma stai scegliendo.
  2. Copia due recordTe li mostra pronti, con il valore da incollare dove tieni il dominio.
  3. Aspetta il lucchettoLa verifica gira da sé fino al certificato. Non c'è niente da rinnovare, mai.

Un indirizzo suo, da subito

Il progetto risponde su un indirizzo della piattaforma dal primo minuto: il tuo dominio si collega quando vuoi, non è un requisito per cominciare.

Uno per tutti i progetti

Colleghi un dominio con il jolly e ogni progetto nuovo prende il suo sottodominio da sé. Chi lavora per i clienti collega il dominio del cliente e basta.

E ti dice se sta rispondendo

Ogni indirizzo ha un pallino di salute che viene da una prova vera — il nome si risolve, la stretta di mano TLS riesce — non da quello che dovrebbe essere.

Con il codice da inquadrare

Per far aprire l'applicazione su un telefono senza dettare un indirizzo. Si scarica come immagine.

Pubblicare

Un gesto, e quattro cose che accadono prima

Pubblicare è un tasto. Quello che lo rende un tasto premibile senza paura è cosa la piattaforma fa attorno ad esso.

Prima ti dico cosa cambia

Quattro riquadri di confronto fra l'ambiente di prova e quello pubblico: i file, uno per uno; la struttura del database, con le cancellazioni in rosso in cima; il contratto dell'API, cioè cosa smetterebbe di funzionare per un cliente già costruito sulla produzione; le macchine. Si pubblica sapendo cosa si sta pubblicando.

Poi copio quello che sto per sovrascrivere

Una copia di sicurezza del pubblicato viene fatta e attesa PRIMA di toccare qualsiasi cosa. Se non riesce, la pubblicazione si ferma e niente viene toccato: pubblicare sopra qualcosa che non si è potuto salvare è esattamente ciò che la copia serve a evitare.

E poi lo faccio, con la barra che avanza

La versione numerata, l'allineamento della struttura del database e le migrazioni dei dati, le macchine, la costruzione del frontend: il puntatore alla versione pubblicata si sposta soltanto a costruzione finita, e se qualcosa si rompe prima non cambia niente per chi sta usando l'app. Chi apre la pagina durante una pubblicazione — anche da un altro computer — vede le stesse barre.

Una alla volta, per chiunque

Finché una pubblicazione è in corso non ne parte un'altra, nemmeno da un'altra sessione o da un altro utente. Due pubblicazioni sovrapposte scriverebbero l'una sopra l'altra.

studio.spelltech.cloud
La sezione Versioni dello Studio, al momento di pubblicare: i riquadri di confronto prova/pubblico in cima (file, struttura del database, contratto dell'API, macchine) e sotto la pipeline con le barre di avanzamento.
Ingrandisci
La sezione Versioni dello Studio, al momento di pubblicare: i riquadri di confronto prova/pubblico in cima (file, struttura del database, contratto dell'API, macchine) e sotto la pipeline con le barre di avanzamento.
Tornare indietro

La differenza fra provare e rischiare

Un progetto che non si può rimettere com'era è un progetto su cui non si osa. Qui i modi di tornare indietro sono tre, e uno di essi è automatico.

Il punto di prima

Ogni giro dell'agente lascia un punto a cui tornare: si torna indietro senza chiedere niente a nessuno.

Le copie programmate

Un'ora del giorno, e la piattaforma tiene le copie di ogni giorno, settimana e mese, quante ne dici tu. Del lavoro si riporta anche solo un pezzo — frontend, backend, agenti, macchine, dati —, della produzione i dati. I segreti restano nella cassaforte: un ripristino non li tocca.

Una versione precedente

Ogni pubblicazione è una versione numerata che non cambia più. Tornare a una è spostare il puntatore: codice, frontend e macchine tornano in pochi secondi. Le migrazioni dei dati non si disfano, e prima il piano dice quali restano e cosa si è cancellato.

Il tuo GitHub

Il codice nativo sta su un repository, e lo costruisce GitHub

Una macchina è un processo che gira; un repository è codice che si costruisce. Quando serve del codice nativo — un'app Android scritta a mano, qualcosa che deve essere compilato — la piattaforma collega il GitHub della tua organizzazione, ci mette il progetto e fa partire la build. Quello che ne esce resta lì, accanto al run che l'ha fatto.

Il repository è tuo

Sta sull'account o sull'organizzazione GitHub che hai collegato prima di crearlo, con la tua cronologia e i tuoi collaboratori; senza un collegamento nasce sull'account della piattaforma, e lì resta anche se colleghi il tuo dopo. La piattaforma ci scrive dentro, un commit per volta.

Lo costruiscono i runner di GitHub

Compilare non è una cosa che si fa su una macchina accesa a pagamento: si fa su un runner, che esiste per il tempo della build.

E il risultato resta lì

Quello che la build produce resta su GitHub, accanto al run che l'ha fatto: dalla sezione Repository si scarica con un link firmato. Un posto solo dove un risultato può stare.

È anche la strada per iOS

Un'app per iPhone si può firmare soltanto su un Mac, e i runner di GitHub ne hanno: per quel mondo, il repository non è una comodità — è l'unica strada che esiste.

Due cose da sapere prima, non dopo

Su un account personale la piattaforma non può creare repository da sé: serve la tua autorizzazione, oppure le si affida un repository che esiste già. E i minuti di costruzione sono del tuo account GitHub — su un runner macOS costano dieci volte tanto, e vale sapere quale stai usando.

Si parte gratis

Costruiscine uno, e mandalo online oggi.

Il primo progetto vive su un indirizzo suo dal primo minuto: il dominio lo colleghi quando è pronto per essere visto.