Erweitert
TailwindPHP ist eine 1:1-Portierung von TailwindCSS 4.x in reinem PHP. Das Leitprinzip ist originalgetreue Umsetzung: Die Codebasis bildet das ursprüngliche TypeScript-Projekt Datei für Datei nach – mit denselben Dateinamen und derselben Struktur. So lässt sich jedes Verhalten von TailwindCSS eindeutig in PHP zuordnen und Änderungen am Upstream ohne Rätselraten nachvollziehen.
Alles, was nicht zum TailwindCSS-Port gehört, liegt an einem klar gekennzeichneten Ort: src/_tailwindphp/. Dieses Verzeichnis enthält die spezifischen Helfer für PHP — eine Neuimplementierung der Rust-Transformationen lightningcss (LightningCss.php), den CSS-Minifier (CssMinifier.php) und die Portierungen der Begleitbibliotheken (lib/: clsx, tailwind-merge, CVA) im Namensraum TailwindPHP\Lib\*. Alles andere unter src/ entspricht einer Datei in TailwindCSS.
Die Korrektheit wird anhand der eigenen Testsuite von Tailwind geprüft. Testfälle werden direkt aus TailwindCSS-Dateien .test.ts extrahiert und mit der Ausgabe von PHP ausgeführt, sodass jede Abweichung vom ursprünglichen Verhalten sofort auffällt. Das Ergebnis: 4.427 bestandene Tests (Release 1.7.0, gegen TailwindCSS v4.3.3), die Utilities, Varianten, Direktiven, Plugins, den CLI und die Begleitbibliotheken abdecken.
Seiten
- Architektur — die Kompilierungspipeline (parse → scan → compile → optimize → minify), der Verzeichnisaufbau, das
lightningcss-Äquivalent und die Konvention für@port-deviation-Marker. - Caching und Minifizierung — der dateibasierte Ausgabe-Cache (
cache,cacheTtl,clearCache()), der Cache für den Compilerzustand (stateCacheFile) und die Funktionsweise des CSS-Minifiers. - Performance und Tests — Optimierungen speziell für PHP, die Überprüfung der Parität mit TailwindCSS und die Qualitätsprüfung des Codes.
- Kompatibilität und Upgrades — Anforderungen, die erfasste TailwindCSS-Version, bekannte Unterschiede zu TailwindCSS und Versionshinweise zu Upgrades.