drupaljedi/css-tree-shaking

Helps you to eliminate the portions of CSS you aren't using. Usually should be used to generate AMP pages, where is the fixed limit for maximum styles size.

1.1.0 2019-07-25 04:23 UTC

This package is auto-updated.

Last update: 2024-04-15 03:00:58 UTC


README

Build Status codecov Maintainability Total Downloads

Helps you to eliminate the portions of CSS you aren't using. Usually should be used to generate AMP pages, where is the fixed limit for maximum styles size.

Installation

composer require drupaljedi/css-tree-shaking

Usage

Pretty simple to use, just create the object and shake it :)

<?php

include 'vendor/autoload.php';

use DrupalJedi\CssTreeShaking;

$cssShaker = new CssTreeShaking($html);
$optimizedHtml = $cssShaker->shakeIt();

Where $html is raw HTML with inliny styles.

By default, styles will be shaken only if the limit (50kb) is exceeded. If you want to shake the styles in any case, just call the shakeIt() with a TRUE argument:

$optimizedHtml = $cssShaker->shakeIt(TRUE);

Features

  • PSR-4 autoloading compliant structure
  • Easy to use to any framework or even a plain php file