TL;DR
- Il problema
- Nei piccoli team gli obiettivi si perdono tra chat, fogli di calcolo e calendari diversi. Le scadenze si vedono solo quando sono già vicine.
- Cosa ho fatto
- Ho definito prodotto e UX e ho guidato lo sviluppo con Claude Code, passando da un prototipo a un'app desktop fino a una web app realtime su Cloudflare.
- Il risultato
- Un centro operativo online, condiviso in tempo reale, senza server da mantenere e con costi di esercizio vicini allo zero.
Il problema
Nei piccoli team che seguono più clienti e progetti insieme, gli obiettivi si perdono tra chat, fogli di calcolo e calendari diversi. Le scadenze si vedono solo quando sono già vicine, e ognuno ha una versione diversa di cosa va fatto oggi.
Rotta nasce da questa esigenza: un unico posto condiviso, aggiornato in tempo reale, che ogni mattina risponde a una sola domanda: qual è il prossimo passo per arrivare in tempo? Il tutto senza la complessità e i costi di un software gestionale generico.
Il processo
La forma finale non era scontata. Il progetto è diventato una web app realtime per passaggi successivi, validando ogni scelta prima di andare avanti.
Un prototipo per validare l'idea
Prima versione: una pagina con gli obiettivi, il conto alla rovescia alla scadenza e un passo suggerito ogni giorno. Serviva a verificare che il concetto funzionasse prima di investire in un’infrastruttura vera.
Decisione chiave
App desktop, poi cambio di rotta
L’ipotesi iniziale era un’app installata, con avvio automatico al mattino. Il limite è emerso subito: senza un server, più persone non possono vedere gli stessi dati in tempo reale. Uno strumento davvero condiviso doveva vivere online.
Sito realtime su Cloudflare
Riprogettata su Cloudflare: Workers, D1 come database e un Durable Object che fa da stanza condivisa. Ogni modifica viene trasmessa via WebSocket a chi ha la pagina aperta, senza ricaricare. Nessun server da mantenere, costi di esercizio vicini allo zero.
Verificare prima di rilasciare
Prima del deploy: test automatici su date, ricorrenze e sessioni, più prove nel browser con più utenti simulati in contemporanea, per confermare che la sincronizzazione funzionasse davvero e non solo sulla carta.
Da traccia-obiettivi a centro operativo
Il nucleo è cresciuto in un piccolo centro operativo: pipeline clienti, listini modificabili senza toccare il codice, accesso protetto con verifica via email. Ogni estensione parte da un piano approvato prima di scrivere codice, per non rompere quello che già funziona.
Ipotesi iniziale
App desktop installata, con avvio automatico al mattino. Dati locali: nessuna condivisione in tempo reale.
Soluzione
Web app su Cloudflare: Workers, D1 e un Durable Object come stanza condivisa. Ogni modifica arriva a tutti via WebSocket.
La soluzione
Ogni mattina, la vista che conta di più: cosa fare oggi, quanto manca alle scadenze, e un passo suggerito quando serve una spinta.
Oggi
2 in scadenza entro 3 giorni
2giorni
Lancio sito nuovo cliente cliente
Manda al cliente le tre bozze homepage per la scelta finale entro oggi.
6giorni
Modulo 3 — percorso formativo cliente
Prepara la scaletta degli argomenti prima della call di revisione.
14giorni
Rinnovo contratto annuale personale
nota: preparare la proposta di rinnovo con lo sconto segnalazione
Ricostruzione del mockup con dati d’esempio. Ogni modifica compare in tempo reale a tutte le persone del team.
Realtime
Una stanza condivisa
Un Durable Object tiene insieme le persone connesse e trasmette ogni modifica via WebSocket, senza ricaricare la pagina.
Dati
D1 come database
Obiettivi, clienti, pipeline e listini vivono in un database gestito, modificabile senza toccare il codice.
Accesso
Protetto
Accesso con verifica via email. Sessioni, chiavi e architettura dei dati sono rimaste decisioni umane.
Risultati e numeri
Rotta porta un’infrastruttura realtime completa (autenticazione, database condiviso, sincronizzazione via WebSocket, integrazione AI) dentro uno strumento semplice, pensato per essere aperto ogni mattina.
5
passaggi dal prototipo al centro operativo
0
server da mantenere
≈ 0 €
costi di esercizio, vicini allo zero
Realtime
ogni modifica visibile a tutto il team
Lo sviluppo è stato guidato con un agente AI, mantenendo il controllo umano sulle decisioni che contano: architettura dei dati, sicurezza delle sessioni, gestione delle chiavi.
Cosa ho imparato
Scegliere lo stack giusto, non quello promesso.
Il passaggio da app desktop a web app realtime mi ha insegnato a riconoscere presto il limite di un'ipotesi e a cambiare rotta prima di costruirci sopra.
Dirigere l'AI è una competenza a sé.
Guidare lo sviluppo con Claude Code significa decidere cosa delegare e cosa no: architettura, sessioni e chiavi restano decisioni umane, ogni estensione parte da un piano approvato.
Finito vuol dire verificato.
Test su date, ricorrenze e sessioni e prove con più utenti simulati: è lo stesso metodo che porto in ogni progetto, e la ragione per cui ho voglia di continuare a far crescere Rotta.
