Разширено
TailwindPHP е 1:1 порт на TailwindCSS 4.x към чист PHP. Водещият принцип е вярност: кодовата база следва оригиналния проект TypeScript файл по файл — със същите имена на файловете и същата организация — така че всяко поведение в TailwindCSS да има очевидно съответствие в PHP и промените в upstream проекта да могат да се проследяват без догадки.
Всичко, което не е част от порта на TailwindCSS, се намира на едно ясно обозначено място: src/_tailwindphp/. Тази директория съдържа помощните средства, специфични за PHP — повторна реализация на трансформациите Rust lightningcss (LightningCss.php), минификатора CSS (CssMinifier.php) и пренесените съпътстващи библиотеки (lib/: clsx, tailwind-merge, CVA) в пространството от имена TailwindPHP\Lib\*. Всеки друг файл в src/ съответства на файл в TailwindCSS.
Коректността се проверява спрямо собствения набор от тестове на Tailwind. Тестовите случаи се извличат директно от файловете .test.ts на TailwindCSS и се изпълняват спрямо изхода на PHP, така че всяко отклонение от оригиналното поведение се открива веднага. Резултатът е 4,427 преминали теста (издание 1.7.0, спрямо TailwindCSS v4.3.3), които обхващат помощните класове, вариантите, директивите, добавките, CLI и съпътстващите библиотеки.
Страници
- Архитектура — конвейерът за компилиране (анализ → сканиране → компилиране → оптимизиране → минификация), подредбата на изходния код, еквивалентът на
lightningcssи конвенцията за маркерите@port-deviation. - Кеширане и минификация — файловият кеш на изхода (
cache,cacheTtl,clearCache()), кешът на състоянието на компилатора (stateCacheFile) и работата на минификатора CSS. - Производителност и тестване — оптимизациите, специфични за PHP, проверката на съответствието с TailwindCSS и проверката за качество на кода.
- Съвместимост и надграждане — изискванията, следваната версия на TailwindCSS, известните разлики спрямо TailwindCSS и бележките за надграждане за всяко издание.