Ga naar de inhoud

TailwindPHP

Een port van TailwindCSS 4.x naar PHP. Genereer Tailwind-utility CSS in PHP, zonder Node.js en zonder buildstap. Inclusief cn(), tailwind-merge, CVA, de typografie- en formulierenplugins en een CLI.

Terminal
composer require tailwindphp/tailwindphp

Nieuwste release v1.7.0 MIT PHP 8.2+

In de praktijk

Geef markup en optioneel invoer-CSS mee aan één aanroep van PHP en ontvang een stylesheet terug.

Genereer CSS op basis van PHP

tw::generate() scant de markup op classnamen en retourneert alleen de CSS die deze classes nodig hebben. Het tweede argument accepteert invoer-CSS, zodat een kleur die is gedefinieerd in @theme een utility wordt.

cn() bouwt classstrings en lost conflicten tussen Tailwind op, zodat de laatste conflicterende utility wint.

PHP
use TailwindPHP\tw;

$css = tw::generate(
    '<div class="bg-brand p-4">Hello</div>',
    '@import "tailwindcss"; @theme { --color-brand: #3b82f6; }'
);
// .bg-brand now resolves to var(--color-brand)

Zuiver PHP

Geen Node.js en geen buildstap. Werkt met PHP 8.2+ en de standaardextensies mbstring en ctype. Voer composer require uit en ga aan de slag.

Volgt TailwindCSS v4.3.3

Een port van Tailwind v4.3.3 met dezelfde utilities, varianten en directives. De bekende verschillen met Tailwind zijn gedocumenteerd.

4 400+ tests

De uitvoer wordt gecontroleerd met de eigen testsuites van TailwindCSS, gehaald uit de in TypeScript geschreven broncode van TailwindCSS en bij elke push opnieuw uitgevoerd.

Elke utility en variant

De volledige set utilities en alle varianten: hover, focus, responsive, donkere modus, containerqueries en willekeurige waarden.

CSS-directives

@import, @theme, @apply, @utility, @custom-variant, @layer, @plugin en @source, geparseerd en opgelost in PHP.

Genereren tijdens runtime

Genereer utility-CSS direct op basis van HTML, database-inhoud of templatevariabelen. Geen buildstap nodig.

Alles inbegrepen

cn(), merge(), join() en variants(): clsx, tailwind-merge en CVA geport naar PHP, zonder extra packages.

Plug-ins

@tailwindcss/typography en @tailwindcss/forms geport naar PHP, plus een PHP-plugin API voor je eigen utilities en componenten.

CLI

bin/tailwindphp bouwt een stylesheet op basis van een invoerbestand van CSS met -i, -o, --watch en --minify.

Het thema inspecteren

Lees onbewerkte en berekende propertywaarden, kleuren, breakpoints en afstanden voor elke class rechtstreeks uit PHP.

Cache en minifier

Een ingebouwde minifier voor CSS en een bestandscache met TTL houden herhaalde builds snel en de uitvoer compact.

Frameworks voor WordPress en PHP

Lever thema's en plugins op basis van Tailwind zonder Node.js in de stack. TailwindPHP is één enkele dependency van Composer.

Waarom TailwindPHP

Eén runtime in productie

Een PHP-project dat Tailwind gebruikt, neemt doorgaans ook Node.js, een installatie van npm en een buildstap in CI en Docker met zich mee. TailwindPHP compileert de CSS in plaats daarvan binnen het proces van PHP.

CSS voor inhoud die tijdens runtime bekend wordt

Markup uit een database, gebruikersinvoer of templatevariabele kan rechtstreeks naar tw::generate(), dat alleen de CSS retourneert die de classes nodig hebben.

Gecontroleerd aan de hand van een vastgezette release van Tailwind

Testgevallen worden gehaald uit de broncode van Tailwind die in de repository is vastgezet, en uitgevoerd tegen de uitvoer van PHP; afwijkingen laten CI mislukken. Release 1.7.0 is gecontroleerd aan de hand van Tailwind v4.3.3 met 4 427 tests.

CSS per pagina vanuit één compiler

Compileer het thema één keer met tw::compile() en roep daarna generateExact() aan voor elke pagina. Elke aanroep retourneert wat een koude tw::generate() van die pagina zou opleveren, zonder het thema opnieuw te parsen.

Vergeleken met

Tailwind Labs biedt eigen manieren om Tailwind CSS te bouwen. Dit zijn de verschillen met TailwindPHP.

TailwindPHP vergeleken met andere tools
Tailwind CLI (@tailwindcss/cli) Goed inDe eigen command-line-tool van Tailwind, geïnstalleerd vanuit npm. Deze scant je HTML-bestanden, componenten en templates op classnamen en schrijft de bijbehorende stijlen naar een statisch CSS-bestand. Verschil met TailwindPHPTailwindPHP compileert binnen PHP zonder installatie van Node.js of npm. Het volgt een vaste release van Tailwind (v4.3.3 in 1.7.0), en uit de eigen benchmark blijkt dat de oorspronkelijke implementatie in TypeScript de low-levelbewerkingen sneller uitvoert.
Zelfstandige Tailwind CLI Goed inDe Tailwind CLI als zelfstandig uitvoerbaar bestand, voor projecten die het willen gebruiken zonder Node.js te installeren. Verschil met TailwindPHPHet uitvoerbare bestand is een aparte binary die als buildstap wordt uitgevoerd. TailwindPHP is een package van Composer dat je code in PHP aanroept, zodat het ook tijdens een request CSS kan genereren op basis van database-inhoud of templatevariabelen.
Tailwind Play CDN Goed inEen script-tag die Tailwind in de browser uitvoert, om het zonder buildstap uit te proberen. Volgens de documentatie van Tailwind is het bedoeld voor ontwikkeling en niet voor productie. Verschil met TailwindPHPTailwindPHP heeft ook geen buildstap nodig, maar genereert de CSS op de server in PHP en retourneert die als string, bijvoorbeeld om naar een stylesheet te schrijven.

Vragen en antwoorden

Korte antwoorden uit de documentatie van TailwindPHP.

Installeer het package met Composer en volg de handleiding om aan de slag te gaan en je eerste stylesheet te genereren op basis van PHP.