"Per fare un sito serio serve React." È una delle convinzioni più diffuse — e più discutibili. Per moltissimi progetti, il frontend "vanilla" (cioè senza framework) scritto in TypeScript e compilato con Vite è la scelta più leggera, veloce e facile da mantenere. Vediamo quando ha senso.

Cosa vuol dire "vanilla"

Vanilla significa usare direttamente gli strumenti del browser — HTML, CSS e JavaScript/TypeScript — senza una libreria che faccia da intermediario. Nessun livello extra da caricare, nessuna dipendenza che invecchia: solo il codice che serve davvero.

Vite: lo strumento che rende tutto semplice

Vite è uno strumento di sviluppo modernissimo: durante la scrittura offre un server velocissimo con aggiornamento istantaneo, e al momento della pubblicazione produce un bundle minificato, cioè un file unico, compatto e ottimizzato.

npm create vite@latest
npm run build   # genera il bundle minificato per la produzione

I vantaggi concreti

  • Peso ridotto: niente codice di framework, quindi pagine più leggere.
  • Velocità: meno JavaScript da scaricare ed eseguire significa Core Web Vitals migliori.
  • Meno manutenzione: meno dipendenze esterne, meno aggiornamenti obbligati, meno superficie per i bug.
  • Tipi inclusi: con TypeScript hai comunque il controllo degli errori in fase di scrittura.

Quando invece serve un framework

Se l'interfaccia è molto interattiva, con tante schermate e stato condiviso, un framework ripaga la complessità. È il discorso che approfondisco in quando conviene un framework.

Dove sta il punto di rottura

Il segnale che il vanilla non basta più non è il numero di pagine, ma la duplicazione della logica di sincronizzazione: quando lo stesso dato va riscritto a mano in tre punti del DOM e ogni modifica ne dimentica uno, stai reimplementando un framework, peggio e senza test. Finché gli aggiornamenti di interfaccia restano localizzati e prevedibili, il vanilla vince su peso e tempo di avvio.

Leggi anche: perché scelgo TypeScript.