Перейти к содержимому

Дополнительно

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 и примечания к обновлению для каждого выпуска.