↓Salta al contenuto principale
Alemasone

Bootstrap o Material Design: quale framework scegliere

Peso del bundle, facilità di personalizzazione e casi d'uso reali: come scegliere fra Bootstrap, Material UI e Tailwind per il prossimo progetto web.

6 min di lettura Aggiornato il
Schermo con il codice di un'interfaccia web e l'anteprima dei componenti affiancata
In questa pagina
Bootstrap ti dà una griglia e componenti neutri che funzionano ovunque, Material UI porta in React il linguaggio visivo di Google, Tailwind non ha componenti ma classi da combinare. Oltre all’aspetto cambia il peso: Bootstrap sta intorno ai 42 KB compressi, Material UI supera spesso i 100 KB, Tailwind in produzione resta fra i 5 e i 15 KB.

La domanda di partenza di solito è «Bootstrap o Material Design?», ma oggi nel confronto entra quasi sempre anche Tailwind, che negli ultimi anni ha preso il posto di Bootstrap in molti progetti nuovi. I primi due ti consegnano pezzi già fatti e riconoscibili, il terzo ti lascia costruire tutto: parti più piano, ma alla fine il sito non somiglia a nessun altro.

Il confronto essenziale #

BootstrapMaterial UITailwind CSS
Cosa offreComponenti CSS e JavaScript prontiComponenti React secondo Material DesignClassi di utilità da combinare
Peso in produzioneCirca 42 KB compressiOltre 100 KB compressi, variabile5-15 KB
Aspetto predefinitoNeutro ma riconoscibileMolto marcatoNessuno, lo costruisci tu
PersonalizzazioneBuona, con le variabili SassAmpia con i temi, ma dentro le regole MaterialTotale
Serve un framework JavaScriptNoSì, ReactNo
Tempo per il primo risultatoPochi minutiPoco, se conosci ReactPiù lungo all’inizio

Bootstrap #

Nato come progetto interno di Twitter, è ancora la scelta più pratica quando devi mettere in piedi in fretta qualcosa che funzioni bene su qualsiasi schermo: una griglia a dodici colonne solida, componenti per tutte le esigenze comuni (menu, form, finestre modali, schede), una documentazione ottima e un’infinità di esempi e temi già pronti.

Non richiede nessun framework JavaScript, quindi va bene per siti tradizionali, pannelli di amministrazione e progetti in cui l’HTML lo genera il server, come WordPress, Laravel o Django.

Pagina di esempio Album di Bootstrap con le schede disposte sulla griglia
Il modello Album: schede su una griglia a dodici colonne che si adatta allo schermo

Il difetto di sempre è che un sito Bootstrap lasciato così com’è si riconosce subito. Si rimedia cambiando le variabili Sass (colori, caratteri, arrotondamenti) e compilando solo i componenti che usi, che tra l’altro riduce anche il peso.

Quando sceglierlo: prototipi, pannelli interni, siti aziendali, progetti con scadenze strette, gruppi in cui non tutti conoscono React o Vue.

Material UI #

Material Design è il linguaggio visivo che Google ha presentato nel 2014 e che oggi è arrivato alla terza versione, Material 3, rinnovata nel 2025 con la variante Expressive. Material UI (MUI) ne è l’implementazione più diffusa per React: una libreria di componenti molto ricca, curata per l’accessibilità, con un sistema di temi che adatta colori, tipografia e spaziature in modo coerente.

Interfaccia con schede, pulsanti e campi disegnati secondo le linee guida Material Design di Google
I componenti Material si riconoscono da ombre, proporzioni e animazioni codificate

Il prezzo è il peso: fra React e la libreria dei componenti superi facilmente i 100 KB compressi. Su un sito pubblico sono tanti, in un gestionale che si carica una volta e resta aperto per ore molto meno.

Tieni presente anche che Material Design ha regole precise su ombre, movimenti e proporzioni. Se il tuo progetto deve avere un aspetto molto diverso, finisci a combattere con la libreria, e a quel punto tanto vale sceglierne un’altra.

Quando sceglierlo: applicazioni React, gestionali aziendali, strumenti interni in cui conta più la coerenza dei componenti che l’originalità, progetti che devono essere accessibili senza costruire tutto da zero.

E se vuoi Material Design senza React? #

Esiste Material Design for Bootstrap (MDB), che applica l’aspetto Material ai componenti di Bootstrap. È comodo se sei già su Bootstrap e vuoi quell’estetica, ma la versione gratuita ha meno componenti e il resto è a pagamento.

Tailwind CSS #

Tailwind non ti dà componenti ma classi di utilità per colori, spaziature, tipografia e disposizione. L’aspetto lo costruisci mettendo insieme queste classi, e il risultato non somiglia a nessun tema già visto.

Markup di un pulsante costruito riga per riga con le classi di utilità di Tailwind CSS
Con Tailwind l’aspetto nasce componendo classi, non invocando un componente

Il file finale pesa pochissimo perché in compilazione vengono incluse solo le classi che compaiono nel progetto. Dalla versione 4, uscita all’inizio del 2025, la configurazione si scrive direttamente nel CSS e la compilazione è molto più veloce.

Gli svantaggi sono due. L’HTML si riempie di classi, e a molti sviluppatori sembra illeggibile. E all’inizio si va più lenti, perché ogni pulsante va costruito da capo. Il secondo problema sparisce appena ti crei i tuoi componenti riutilizzabili, che è poi il modo in cui Tailwind si usa nei progetti veri.

Quando sceglierlo: progetti con un’identità visiva precisa, siti pubblici dove il peso conta, gruppi che lavorano a lungo sullo stesso prodotto e possono permettersi di investire tempo all’inizio.

Come decidere #

Cinque domande che di solito bastano:

  1. È un sito pubblico o un’applicazione? Per un sito pubblico il peso conta, quindi Bootstrap o Tailwind. In un’applicazione Material UI diventa sostenibile.
  2. Usi React? Se no, Material UI esce dal confronto.
  3. Devi rispettare un’identità visiva? Se sì e non somiglia a Material Design, Tailwind è quello che ti ostacola meno.
  4. Quanto tempo hai? Con scadenze strette i componenti pronti vincono.
  5. Chi manterrà il codice? Bootstrap lo riprende in mano chiunque. Con Tailwind il gruppo deve condividere le stesse convenzioni.
Includi solo quello che usi. Bootstrap compilato da sorgente con i soli componenti necessari pesa molto meno della versione completa, e con Material UI le importazioni mirate evitano di portarsi dietro tutta la libreria. Molti «framework pesanti» in realtà sono framework importati male.

Le alternative da conoscere #

shadcn/ui funziona al contrario delle librerie classiche: invece di installarla, copi i componenti dentro il tuo progetto e diventano tuoi. È costruito su Tailwind e ti dà la velocità dei componenti pronti con la libertà di modificarli come vuoi.

Pico.css e i framework senza classi danno un aspetto gradevole all’HTML semantico senza che tu scriva nemmeno una classe. Sono perfetti per documentazione, prototipi e pagine semplici.

I web component ti fanno costruire componenti che non dipendono da nessun framework JavaScript, utile se pensi di cambiare tecnologia fra qualche anno.

Domande frequenti #

Bootstrap è superato? #

No. È ancora sviluppato, resta fra i pacchetti più scaricati e per gestionali, siti aziendali e prototipi è spesso la strada più veloce. Semplicemente non è più di moda come qualche anno fa.

Material UI e Material Design sono la stessa cosa? #

No. Material Design è il linguaggio visivo di Google, cioè un insieme di regole e linee guida. Material UI è una libreria di componenti React che lo applica, sviluppata da un’azienda indipendente. Puoi seguire Material Design senza MUI, e usare MUI cambiandone parecchio l’aspetto.

Posso usare Bootstrap e Tailwind insieme? #

Tecnicamente sì, ma è una pessima idea: i due sistemi hanno regole che si sovrappongono e passi il tempo a combattere con la specificità dei selettori. Se stai passando dall’uno all’altro, migra una sezione alla volta tenendole ben separate.

Posso passare da Bootstrap a Material Design a progetto avviato? #

Si può, ma significa riscrivere quasi tutte le classi e parte della logica dei componenti. A progetto inoltrato conviene di più personalizzare il tema di Bootstrap, o usare MDB se ti serve proprio l’aspetto Material.

Quale si impara più in fretta? #

Bootstrap: se conosci l’HTML hai un risultato in mezz’ora. Tailwind richiede di imparare la logica delle utilità, Material UI presuppone React. In compenso Tailwind, una volta imparato, ti insegna il CSS meglio degli altri due, perché ogni classe corrisponde quasi sempre a una proprietà reale.

Il peso del CSS conta per la SEO? #

Conta sui tempi di caricamento, che rientrano fra i parametri di esperienza (i Core Web Vitals) che Google considera. Un centinaio di kilobyte in più su una connessione mobile lenta vuol dire attesa in più. Non è il fattore più importante in assoluto, ma è uno di quelli che puoi sistemare senza rinunciare a nulla.

Da leggere anche