Batch
Progettazione e sviluppo nativo di un'app in Vibe coding
App in vibe coding
Batch è una native iPhone app per gestire le preparazioni che richiedono fermentazione. Ho progettato il prodotto end-to-end, dal concept e dalla brand direction fino alla UX operativa e allo sviluppo in SwiftUI. L’app è pensata come un sistema planner-first: aiuta a capire cosa è attivo, cosa richiede attenzione e quale sia il prossimo passo, integrando workflow per impasti, starter, kefir, reminder locali e contenuti offline di supporto.
Showreel Batch
Showreel Batch
Showreel Batch
Overview
Batch è una native app per iPhone dedicata alla gestione di fermentati vivi. Il progetto parte dal mondo del lievito madre e della panificazione, ma si evolve in una direzione più ampia: diventare un sistema essenziale per seguire colture, batch, routine, pause, riprese e prossime azioni across fermentazioni diverse come starter, impasti e kefir. L’idea di fondo è semplice: togliere caos, appunti sparsi e incertezza da processi che cambiano continuamente nel tempo.
Il problema
Molti strumenti legati a pane e fermentazione si dividono tra ricettari, contenuti editoriali, community o app troppo generiche. Il problema è che la fermentazione reale non è statica: uno starter cambia stato, un impasto slitta rispetto al piano, un batch va monitorato e ripreso al momento giusto. Mancava uno strumento operativo capace di rispondere bene a una domanda molto concreta: cosa devo fare adesso? Da qui nasce Batch, con una logica action-first e local-first, pensata per accompagnare l’uso quotidiano invece di archiviare solo informazioni.
La soluzione
Ho progettato Batch come un sistema calmo, preciso e orientato all’azione. L’esperienza mette al centro gli elementi vivi del processo: attività in corso, stati, tempi, finestre operative, reminder e continuità tra un batch e il successivo. Il cuore del prodotto non è la ricetta ma il comportamento del fermento nel tempo. Per questo l’app mostra prima ciò che è attivo o urgente, poi ciò che arriva dopo, e integra una base di conoscenza consultabile senza trasformarsi in una piattaforma editoriale.
Cosa fa il prodotto
Batch permette di creare e seguire workflow di panificazione, gestire starter e tenere traccia di batch di kefir in un’unica logica coerente. L’utente può impostare formule, generare timeline operative, vedere gli step attivi, far partire timer, spostare in avanti la pianificazione quando la realtà cambia e ricevere notifiche locali senza dipendere da backend, login o sync cloud. A supporto del flusso ho integrato anche contenuti statici di knowledge e troubleshooting, disponibili offline e collegati ai contesti d’uso.
Il mio ruolo
Su Batch ho lavorato end-to-end, occupandomi sia della parte di UX/UI sia della parte di sviluppo. Ho definito il posizionamento del prodotto, il concept e la direzione del brand, ho costruito l’architettura dell’esperienza e il sistema visivo dell’interfaccia, e ho tradotto tutto in un’app nativa iOS con stack Apple-first. È un progetto che mostra il mio modo di lavorare sul prodotto in modo completo: strategia, naming, interaction design, design system, modellazione dei flussi e implementazione.
Il lavoro UX/UI
Dal punto di vista UX ho impostato Batch come un prodotto planner-first. Ho costruito l’esperienza attorno a una home operativa che priorizza ciò che è in corso, in ritardo o in arrivo, così da far emergere subito il prossimo task rilevante. Ho definito una logica di step chiara, con stati distinti tra pianificato, in corso, completato e saltato, e con la possibilità di separare sempre tempi pianificati e tempi reali. Un elemento centrale del progetto è la funzione di timeline shift, che permette di spostare gli step futuri quando la fermentazione non segue il piano iniziale, evitando di costringere l’utente a riscrivere manualmente tutta la sequenza.
Ho lavorato anche sulla gerarchia visiva e sul comportamento dei componenti. Ogni card ha una sola azione primaria, i contenuti avanzati sono nascosti dietro progressive disclosure, gli stati sono leggibili a colpo d’occhio e il layout usa grande attenzione a spaziatura, ritmo e chiarezza. La UI è volutamente quieta e controllata: niente estetica rustica da bakery app, niente retorica gourmet, niente elementi decorativi superflui. Il brand e l’interfaccia condividono la stessa idea di fondo: living system, calm clarity.
Sul piano visivo ho definito una direzione contemporanea, essenziale e nativa. Il naming Batch e la tagline Fermenti vivi spostano il progetto da una lettura verticale sul pane a un sistema più ampio dedicato alla fermentazione. Ho costruito il brand per risultare preciso, vivo, calmo e affidabile, evitando sia l’immaginario nostalgico e artigianale sia quello pseudo-scientifico. Questa stessa logica è stata tradotta in UI con forme morbide, gerarchie pulite, linguaggio sintetico e microcopy operativi pensati per aiutare più che per decorare.
Il lavoro di sviluppo
Dal punto di vista tecnico ho scelto una direzione molto precisa: app nativa iPhone, stack Apple-only, architettura locale e poche dipendenze. Batch è sviluppata con SwiftUI per l’interfaccia, SwiftData per la persistenza, UserNotifications per i reminder locali e contenuti bundled JSON per la knowledge base. Questa scelta non è solo tecnica ma anche di prodotto: volevo un’app veloce, personale, offline-first e priva di tutta la complessità che backend, auth e servizi esterni avrebbero introdotto in una prima iterazione.
Ho strutturato il progetto in modo feature-oriented, separando modelli, servizi, persistenza, design system e feature views. Ho lavorato su modelli come starter, refresh, recipe formula, bake e bake step, e ho definito servizi dedicati alla generazione delle schedule, alla costruzione dell’agenda giornaliera, al caricamento dei contenuti e alla gestione delle notifiche. In particolare, la logica di scheduling backward a partire dall’orario target e il rescheduling delle notifiche dopo ogni shift della timeline sono due aspetti chiave che mostrano il mio lavoro sia sul comportamento del prodotto sia sull’implementazione concreta.
Anche la parte di qualità è stata pensata come parte del progetto, non come aggiunta finale. La repo è documentata per essere leggibile e portfolio-ready, con roadmap, requisiti, architettura, convenzioni e test strategy esplicite. Questo rende Batch non solo un buon esercizio di UI, ma un progetto prodotto in modo serio anche dal punto di vista del codice, delle decisioni e della manutenzione.
Risultato
Il risultato è un’app che prova a rendere leggibile qualcosa che di solito è instabile, ambiguo e difficile da seguire: il comportamento di fermenti vivi nel tempo. Batch unisce product thinking, UX operativa, design system e sviluppo nativo in un unico progetto coerente. Per me è stato soprattutto un modo per lavorare su un prodotto completo, dove brand, interfaccia, logica e implementazione non sono pezzi separati ma parti dello stesso sistema. Il valore del progetto sta proprio qui: trasformare un bisogno molto concreto in un’esperienza chiara, calma e davvero utile.
Il mio metodo
Progetto prodotti ed esperienze partendo dalle persone, non dalle funzionalità.
Porto il lavoro dalla ricerca alla consegna in passaggi chiari, così ogni decisione è tracciabile, verificata e collegata a bisogni reali, non solo all’estetica.
Discover
Capisco il contesto
Define
Definisco il problema
Develop
Esploro, testo e definisco una direzione
Deliver
Consegno la soluzione