TailwindPHP
TailwindPHP je 1:1 port TailwindCSS 4.x do PHP. Analyzuje vaše CSS, prohledává značky a hledá názvy tříd a generuje utility CSS, které vytváří TailwindCSS v4.3.3 — celé v PHP, bez Node.js a bez kroku sestavení.
- Čisté PHP — dodává se jako balíček Composer a běží na PHP 8.2+ se standardními rozšířeními
ctypeambstring. Bezexec, FFI i nativních nástrojů pro sestavení. - Ověřeno vůči TailwindCSS — utility, varianty, direktivy a funkce CSS odpovídají TailwindCSS v4.3.3. Výstup se ověřuje pomocí vlastních testovacích sad Tailwind, které jsou extrahovány ze zdrojového kódu TypeScript a spouštějí se při každém nahrání změn (4,400+ testů). Známé rozdíly (několik detailů serializace bez vlivu na kaskádu a otevřené problémy) uvádí Kompatibilita a aktualizace.
- Kompletní sada funkcí — úplná sada utilit v4.3.3 TailwindCSS (včetně
container, utilit pro posuvníky,zoom-*atab-*), všech variant (hover, focus, responzivní, tmavý režim, dotazy na kontejnery, libovolné hodnoty) a úplné sady direktiv:@import,@theme,@apply,@utility,@variant,@custom-variant,@layer,@plugina@source. - Vše potřebné v balíčku —
cn(),merge(),join()avariants()zahrnují porty PHP pro clsx, tailwind-merge a CVA, takže už obsahují doprovodné knihovny, které každý projekt Tailwind používá. - Doplňky —
@tailwindcss/typographya@tailwindcss/formsjsou plně portované a doplněk PHP API vám umožní napsat vlastní.
Proč TailwindPHP vznikl
TailwindCSS je napsán v TypeScript a běží na Node.js. To je zásadní požadavek pro každý projekt PHP, který chce používat Tailwind: další runtime, instalaci npm a krok sestavení v CI i Docker. Pro mnoho aplikací PHP je to zbytečná komplikace.
TailwindPHP tuto překážku odstraňuje. Váš kód PHP kompiluje Tailwind CSS přímo a používá pouze standardní knihovnu. Díky tomu jsou možné věci, které jsou s nástroji JavaScript obtížné nebo nemožné:
- Frameworky WordPress a PHP — dodávejte motivy a doplňky využívající Tailwind, aniž by uživatelé museli instalovat Node.js nebo spouštět sestavení. Stačí
composer requirea můžete pokračovat. Viz TailwindWP, ukázkový doplněk WordPress, který pomocí TailwindPHP generuje CSS editoru bloků. - Runtime CSS — generujte utility CSS za běhu z uživatelského vstupu, obsahu databáze nebo proměnných šablony namísto při sestavení.
- Jednodušší nasazení — v produkci není potřeba Node.js, sestavení v CI ani npm v obrazu Docker.
Stejný přístup jako u scssphp pro SCSS — celý kompilátor v PHP.
Co umí
- Kompiluje sadu utilit TailwindCSS v4.3.3, varianty a libovolné hodnoty z názvů tříd nalezených ve vašem obsahu.
- Zpracovává všechny direktivy:
@import(včetně virtuálních modulů jakotailwindcssatailwindcss/utilitiesa importůreference),@theme,@apply,@utility,@variant,@custom-variant,@layer,@plugina@source. - Implementuje funkce CSS z Tailwind —
theme(),--theme(),--spacing()a--alpha()— a také převodcolor-mix()→oklab()a transformace CSS, které TailwindCSS předává LightningCSS. - Načítá
@importze souborového systému včetně vnořených importů, odstranění duplicit a vlastních resolverů, případně z řetězců CSS přímo v kódu. - Obsahuje Preflight (základní reset Tailwind), podporu prefixů, náhradní hodnoty
@property, přidávání prefixů dodavatelů a přesouvání definic klíčových snímků. - Obsahuje
cn(),merge(),join()avariants()/compose()pro sestavování názvů tříd, řešení konfliktů a varianty komponent. - Zahrnuje pluginy pro typografii a formuláře a rozhraní API pro pluginy (
addUtilities,matchUtilities,addComponents,addVariant,theme, …). - Poskytuje CLI (
bin/tailwindphp) s možnostmi sestavení@tailwindcss/clia také ukládání výstupu do mezipaměti podle souborů, trvalou mezipaměť stavu kompilátoru a minifikátor CSS pro produkční prostředí.
Co merql není
TailwindPHP je kompilátor CSS, nikoli sada nástrojů pro editor. Záměrně neobsahuje části ekosystému Tailwind určené pro IDE — IntelliSense, automatické doplňování, řazení tříd a zdrojové mapy — protože jde o funkce editoru, nikoli o součást generování CSS. Zahrnuje vše, co vytváří CSS, ale ne funkce editoru.
Kde začít
- Začínáme — instalace balíčku a generování první šablony stylů.
- Použití — prohledávání obsahu, úprava motivu a používání direktiv Tailwind.
- Utility tříd —
cn(),merge(),join()avariants(). - Doplňky — typografie, formuláře a tvorba vlastních doplňků.
- API — úplná sada direktiv
twa instanceTailwindCompiler. - CLI —
bin/tailwindphppro sestavení ze souborů a režim sledování. - Pokročilé — architektura, ukládání do mezipaměti, výkon a poznámky ke kompatibilitě.