Avanzate
TailwindPHP è un port 1:1 di TailwindCSS 4.x in puro PHP. Il principio guida è la fedeltà: il codice replica il progetto originale TypeScript file per file, con gli stessi nomi e la stessa organizzazione, così che ogni comportamento in TailwindCSS abbia una corrispondenza evidente in PHP e le modifiche upstream possano essere seguite senza supposizioni.
Tutto ciò che non fa parte del port di TailwindCSS si trova in un unico posto chiaramente indicato: src/_tailwindphp/. Questa directory contiene gli helper specifici di PHP: una reimplementazione delle trasformazioni Rust lightningcss (LightningCss.php), il minimizzatore CSS (CssMinifier.php) e i port delle librerie complementari (lib/: clsx, tailwind-merge, CVA) nello spazio dei nomi TailwindPHP\Lib\*. Tutto il resto in src/ corrisponde a un file in TailwindCSS.
La correttezza viene verificata con la suite di test di Tailwind. I casi di test vengono estratti direttamente dai file .test.ts di TailwindCSS ed eseguiti sull'output di PHP, così ogni divergenza dal comportamento originale emerge subito. Il risultato è di 4,427 test superati (release 1.7.0, rispetto a TailwindCSS v4.3.3), che coprono utility, varianti, direttive, plugin, CLI e librerie complementari.
Pagine
- Architettura — la pipeline di compilazione (parse → scan → compile → optimize → minify), la struttura dei sorgenti, l'equivalente di
lightningcsse la convenzione dei marker@port-deviation. - Cache e minimizzazione — la cache dei file di output (
cache,cacheTtl,clearCache()), la cache dello stato del compilatore (stateCacheFile) e il funzionamento del minimizzatore CSS. - Prestazioni e test — ottimizzazioni specifiche di PHP, verifica della parità con TailwindCSS e controlli sulla qualità del codice.
- Compatibilità e aggiornamenti — requisiti, versione di TailwindCSS monitorata, differenze note rispetto a TailwindCSS e note di aggiornamento per ogni release.