Дополнительно
TailwindPHP — это 1:1-порт TailwindCSS 4.x на чистом PHP. Главный принцип — точность: кодовая база повторяет исходный проект TypeScript файл за файлом — с теми же именами файлов и той же организацией, — чтобы любое поведение в TailwindCSS имело очевидный аналог в PHP, а изменения в исходном проекте можно было отслеживать без догадок.
Всё, что не относится к порту 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 и вспомогательные библиотеки.
Страницы
- Архитектура — конвейер компиляции (parse → scan → compile → optimize → minify), структура исходного кода, эквивалент
lightningcssи соглашение об обозначении маркеров@port-deviation. - Кэширование и минификация — файловый кэш результатов (
cache,cacheTtl,clearCache()), кэш состояния компилятора (stateCacheFile) и работа минификатора CSS. - Производительность и тестирование — оптимизации для PHP, проверка соответствия TailwindCSS и контроль качества кода.
- Совместимость и обновление — требования, отслеживаемая версия TailwindCSS, известные отличия от TailwindCSS и примечания к обновлению для каждого выпуска.