Generative UI, agentic apps e Gemini SDK: il resoconto della tappa napoletana del Gemini CodeLabs Tour 2026, tra masterclass, deploy su Cloud Run e community.

L'intelligenza artificiale generativa ha smesso da tempo di essere un tema da conferenza: è entrata negli stack di sviluppo quotidiani e nei workflow dei team frontend. Lo scorso venerdì, 18 settembre, con il collega Cosimo, ho partecipato alla masterclass "Agentic Apps con Google Gemini SDK e TypeScript", tappa napoletana del Gemini CodeLabs Tour 2026, organizzata da GDG Napoli con Fabio Biondi, Google Developer Expert, e Riccardo Carlesso, Developer Advocate presso Google Cloud.
La scelta della sede ha un suo peso: l'Aula Magna del nuovo polo Federico II di Scampia racconta un territorio che si rigenera anche attraverso i suoi spazi, e dà all'evento un significato che va oltre quello tecnico. Cosa a cui noi di Unitiva teniamo molto.
La masterclass del mattino, guidata da Fabio Biondi, ha messo a fuoco l'integrazione di Gemini nelle applicazioni JavaScript sfruttando i modelli più recenti di Google, tra cui Gemini 3, Veo e Nano Banana. Sui nomi dei modelli ho preso appunti con il beneficio del dubbio: cambieranno di nuovo entro pochi mesi. Quello che resta è lo strato sotto, i pattern di integrazione e i protocolli, ed è lì che conviene mettere competenza più che rincorrere l'ultimo annuncio.
Un esempio mi è rimasto in testa? Fabio ha costruito in diretta una piccola demo di virtual try-on: sceglieva un capo tra quelli a schermo e il modello glielo mostrava indossato, in tempo reale. Sembra un gioco, e in parte lo è, ma fino a poco fa una cosa così richiedeva una pipeline dedicata. Ora sta dentro una manciata di prompt multimodali. Effetto wow garantito!
Al centro, casi d'uso reali su frontend e backend: generazione di contenuti, prompt multimodali, chatbot, streaming delle risposte, output strutturati e, soprattutto, function calling e integrazione di server MCP (Model Context Protocol), lo standard che sta diventando il modo naturale per far dialogare i modelli con strumenti e servizi esterni.

Su MCP mi sono fermato a ragionare più del resto. Sposta il modo in cui si costruiscono le integrazioni: da connettori su misura, riscritti per ogni sistema, a un protocollo condiviso che un modello può interrogare. Per chi costruisce integrazioni tra gestionali e servizi esterni, e io ci lavoro spesso, vuol dire che lo stesso lavoro può diventare un tool esposto a un agente, e non più soltanto un ponte tra due API. È il genere di spostamento che ridefinisce cosa significa integrare un sistema.
L'impostazione è stata orientata al prodotto più che al manuale, con esempi pratici su come rendere intelligenti applicazioni tradizionali.
Nel pomeriggio il workshop ha cambiato registro, passando dalla teoria alla costruzione di prototipi funzionanti, questa volta insieme a Riccardo Carlesso. I partecipanti hanno costruito le prime applicazioni intelligenti in TypeScript e Node.js integrando l'SDK di Gemini, creato API REST con funzionalità AI ed effettuato il deploy su Google Cloud, tra Cloud Shell e Cloud Run, utilizzando strumenti come Antigravity e Gemini CLI.
È questo approccio hands-on ad aver reso tangibile il salto di qualità che si ottiene quando l'AI viene integrata nel flusso di sviluppo in modo consapevole e non come semplice elemento dimostrativo. Vedere un'applicazione passare dal codice all'ambiente cloud nell'arco di poche ore cambia la percezione di quanto sia accessibile, oggi, costruire prodotti agentic.
Qui però mi tengo una nota critica, per onestà verso chi legge e poi va a costruire davvero. La velocità con cui un prototipo agentic arriva in cloud nasconde la parte difficile, che comincia dopo. Un agente che usa function calling e server MCP apre una superficie che in un'app tradizionale non esiste: strumenti in mano a un modello, azioni a volte irreversibili, prompt injection che arriva dai dati e non dall'utente. La domanda vera non è quanto in fretta fai il deploy. È cosa serve perché quell'agente sia affidabile in mano a un cliente: validazione degli output, permessi minimi sui tool, un umano nel loop dove l'azione non si torna indietro, una base di eval per misurare i comportamenti invece di fidarsi della singola demo.
A chiudere la giornata, una challenge sul progetto migliore realizzato dai partecipanti e un buon momento di networking tra sviluppatori, community e partner.
Il momento che mi ha sorpreso di più è arrivato con la Generative UI. Fabio l'ha illustrata con esempi che mostrano quanto il confine tra interfaccia e intelligenza stia diventando sottile.
L'idea è che l'interfaccia possa essere generata a runtime dall'AI, in base al contesto e all'obiettivo di chi la usa, invece di essere disegnata per intero in anticipo. Layout e componenti si costruiscono in tempo reale, in base a ciò che serve in quel momento. È un concetto che fa immaginare un web diverso, più adattivo, capace di trasformarsi da semplice schermata a esperienza costruita su misura. Apre prospettive interessanti per chi progetta prodotti digitali, e mette in discussione assunzioni finora date per scontate nella progettazione UX.
C'è una domanda che, lato implementazione, non riesco a mettere da parte: se l'interfaccia si genera a runtime, che fine fa il design system? Da libreria di componenti finiti diventa lo spazio di vincoli entro cui il modello compone, cioè token, regole di accessibilità, pattern ammessi. Il modello orchestra un vocabolario che resta versionato e sotto controllo, invece di produrre markup arbitrario. Vista così, la Generative UI carica il design system di responsabilità nuove: diventa il contratto che tiene insieme interfacce altrimenti imprevedibili.
Resta un nodo aperto che mi porto a casa. Un'interfaccia che si ricompone a ogni interazione è difficile da testare con gli strumenti a cui sono abituato. Storybook, snapshot testing, regressione visiva presuppongono tutti che lo stesso input dia lo stesso output, e qui non è più garantito. Come si versiona una schermata che non esiste finché non viene generata? Come garantisco che rispetti sempre i requisiti di accessibilità, se il layout lo decide un modello a runtime? Non ho una risposta pronta, ed è esattamente lì che si misura la distanza tra una demo brillante e qualcosa che regge in produzione.
Quello che resta, al di là degli strumenti mostrati durante la giornata, è la sensazione di un vero cambio di passo. L'AI non è più soltanto un supporto alla produttività o un layer di automazione da aggiungere a valle: sta diventando un elemento strutturale nella progettazione delle esperienze digitali.
Per chi lavora nel web questo significa ripensare architetture e flussi di interazione con una mentalità più orientata all'adattività e alla generazione dinamica di contenuti e interfacce. Cambia alla radice il modo di immaginare cosa può fare un'applicazione.
La giornata rientra nella "Road to Napoli DevFest 2026", in vista dell'evento organizzato da GDG Napoli il 17 ottobre a Città della Scienza. È il segnale di una community che sta costruendo, tappa dopo tappa, un percorso coerente sull'AI applicata allo sviluppo.
La domanda che mi porto dietro è concreta: quando una parte dell'interfaccia si genera da sola, quanto codice ha ancora senso scrivere a mano e quanto conviene lasciare che il modello componga a runtime, dentro i vincoli che gli diamo?