Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Installazione e file di configurazione

Impariamo ad installare il framework Tailwind CSS, conoscendone i file di configurazione ed in che modo essi possono essere generati automaticamente.
Impariamo ad installare il framework Tailwind CSS, conoscendone i file di configurazione ed in che modo essi possono essere generati automaticamente.
Link copiato negli appunti

Installazione

L'installazione di Tailwind CSS potrebbe risultare un po' triviale. È possibile scaricarlo come modulo NodeJS sia tramite npm install tailwindcss sia con l'alternativa yarn add tailwindcss.

Come anticipato nella prima lezione, Tailwind CSS è compilato tramite PostCSS, quindi per utilizzarlo basta creare un file .css per importare le dipendenze appena scaricate:

@import "tailwindcss/base";
@import "tailwindcss/components";
@import "tailwindcss/utilities";

Il file base definisce le regole base appunto, come stili di default e di reset. Il file components include le regole dei componenti base di tailwind, come ad esempio la classe .container ormai diventata uno standard de-facto. Il file utilities rappresenta il cuore del framework ovvero le classi di utility.

Per avviare la compilazione vera e propria è quindi necessario lanciare lo script npx tailwind build styles.css -o app.css. In questo esempio, il file styles.css rappresenta il nostro file sorgente, mentre app.css il file destinazione.

È possibile integrare la compilazione Tailwind CSS anche all'interno di stack già configurati postCSS, Encore, Brunch, ma anche Webpack, Gulp, Laravel Mix, e Ember.js. Rimandiamo alla documentazione ufficiale per chi fosse interessato all'argomento.

Il file di configurazione tailwind.config.js

Abbiamo appena visto come effettuare una compilazione standard del framework, ma è molto probabile che questa configurazione possa non essere sufficiente. Tramite il parametro -c è infatti possibile passare al compilatore un riferimento ad un file di configurazione:

npx tailwind build styles.css -c tailwind.config.css -o app.css

La configurazione viene espressa tramite un file Javascript, permettendoci quindi una flessibilità importante.

Il file di configurazione serve per modificare, anche radicalmente, il file CSS generato dal framework e permette di definire il design system utilizzato dal nostro portale, così da avere un set di classi CSS di utility che si adattano perfettamente al nostro layout.

È possibile generare un prototipo di file tramite il comando npx tailwind init. Aggiungendo invece l'opzione --full, il file generato conterrà tutte le opzioni possibili:

module.exports = {
  important: true,
  theme: { },
  variants: { },
  plugins: { },
  prefix: '',
  separator: '-',
  corePlugins: { }
}

Il valore booleano important serve per definire se le classi utility devono essere generate con la clausola !important. Questa opzione è utile esclusivamente se utilizziamo Tailwind CSS insieme ad altri framework/librerie che potrebbero avere classi più specifiche. Se usiamo esclusivamente Tailwind CSS (che è la soluzione consigliata), non è necessario modificare questa configurazione.

La sezione theme permette di configurare qualsiasi aspetto del design system del nostro portale, dai colori alle dimensioni dello schermo. È una configurazione molto importante, e ne discuteremo parecchio nelle prossime lezioni.

La sezione variants permette di definire quali varianti verranno definite per ogni classe di utility. Anche questa è una configurazione che approfondiremo in futuro.

La sezione plugins permette di includere plugin di terze parti al framework. La rivedremo quando proveremo a realizzare il nostro plugin.

La stringa prefix permette di definire un prefisso per tutte le classi generate da Tailwind CSS. Anche questa opzione ha senso esclusivamente se lavoriamo con altri file CSS indipendenti dal framework, e che potrebbero entrare in conflitto.

La stringa separator contiene il separatore tra le varianti e le classi utility. Di default, è uguale a due punti (:) e anche in questo caso ha senso modificarlo solo in caso di conflitti.

Infine, la sezione corePlugins permette di disattivare eventuali classi generate di default dal framework, con l'unico scopo di alleggerire il pacchetto compilato.

Ti consigliamo anche