Geavanceerd
TailwindPHP is een 1:1-port van TailwindCSS 4.x naar puur PHP. Het uitgangspunt is getrouwheid: de codebase bootst het oorspronkelijke TypeScript-project bestand voor bestand na — met dezelfde bestandsnamen en dezelfde indeling — zodat elk gedrag in TailwindCSS een duidelijke tegenhanger heeft in PHP en wijzigingen upstream zonder giswerk kunnen worden gevolgd.
Alles wat geen deel uitmaakt van de TailwindCSS-port staat op één duidelijk gemarkeerde plek: src/_tailwindphp/. Die map bevat de PHP-specifieke hulpfuncties: een herimplementatie van de Rust lightningcss-transformaties (LightningCss.php), de minifier van CSS (CssMinifier.php) en de companion library-ports (lib/: clsx, tailwind-merge, CVA) onder de TailwindPHP\Lib\*-namespace. Alles wat verder onder src/ staat, komt overeen met een bestand in TailwindCSS.
De juistheid wordt gecontroleerd met de eigen testsuite van Tailwind. Testgevallen worden rechtstreeks uit de TailwindCSS-bestanden van .test.ts gehaald en uitgevoerd tegen de uitvoer van PHP, zodat elke afwijking van het oorspronkelijke gedrag meteen tot een fout leidt. Het resultaat: 4,427 tests slagen (release 1.7.0, tegen TailwindCSS v4.3.3), voor hulpfuncties, varianten, richtlijnen, plugins, de CLI en de companion libraries.
Pagina's
- Architectuur — de compilatiepipeline (parsen → scannen → compileren → optimaliseren → minificeren), de broncode-indeling, het equivalent van
lightningcssen de conventie voor@port-deviation-markeringen. - Caching en minificatie — de bestandsgebaseerde uitvoercache (
cache,cacheTtl,clearCache()), de cache voor de compilerstatus (stateCacheFile) en wat de minifier van CSS doet. - Prestaties en tests — optimalisaties specifiek voor PHP, hoe de overeenkomst met TailwindCSS wordt gecontroleerd en de poort voor codekwaliteit.
- Compatibiliteit en upgrades — vereisten, de bijgehouden versie van TailwindCSS, bekende verschillen met TailwindCSS en upgrade-opmerkingen per release.