Išplėstinė dalis
TailwindPHP yra 1:1 perkėlimas TailwindCSS 4.x į grynąjį PHP. Pagrindinis principas – tikslumas: kodų bazė atspindi pradinį TypeScript projektą failas po failo – tie patys failų pavadinimai, ta pati struktūra – kad bet kuri TailwindCSS funkcija turėtų aiškią vietą PHP ir kad būtų galima be spėlionių sekti pradinio projekto pakeitimus.
Viskas, kas nepriklauso TailwindCSS perkėlimui, laikoma vienoje aiškiai pažymėtoje vietoje: src/_tailwindphp/. Šiame kataloge yra PHP skirti pagalbiniai įrankiai — Rust lightningcss transformacijų realizacija (LightningCss.php), CSS minifikatorius (CssMinifier.php) ir papildomų bibliotekų perkėlimai (lib/: clsx, tailwind-merge, CVA) vardų srityje TailwindPHP\Lib\*. Visa kita, kas yra src/, atitinka TailwindCSS failą.
Teisingumas tikrinamas naudojant paties Tailwind testų rinkinį. Testavimo atvejai tiesiogiai išgaunami iš TailwindCSS .test.ts failų ir paleidžiami su PHP išvestimi, todėl bet koks nukrypimas nuo pradinės elgsenos iškart aptinkamas. Iš viso sėkmingai atlikta 4,427 testų (leidimas 1.7.0, su TailwindCSS v4.3.3), apimančių įrankius, variantus, direktyvas, papildinius, CLI ir papildomas bibliotekas.
Puslapiai
- Architektūra — kompiliavimo eiga (analizė → nuskaitymas → kompiliavimas → optimizavimas → minifikavimas), išeities kodo išdėstymas,
lightningcssatitikmuo ir@port-deviationžymeklių susitarimas. - Podėliavimas ir minifikavimas — failais pagrįstas išvesties podėlis (
cache,cacheTtl,clearCache()), kompiliatoriaus būsenos podėlis (stateCacheFile) ir minifikatoriaus CSS veikimas. - Našumas ir testavimas — PHP būdingos optimizacijos, suderinamumo su TailwindCSS tikrinimas ir kodo kokybės patikra.
- Suderinamumas ir naujinimas — reikalavimai, stebima TailwindCSS versija, žinomi skirtumai nuo TailwindCSS ir kiekvieno leidimo naujinimo pastabos.