googleshokry/laravel-page-speed is a Laravel package for laravel page speed.
It currently has 2 GitHub stars and 41 downloads on Packagist.
Install it with composer require googleshokry/laravel-page-speed.
Discover more Laravel packages by googleshokry
or browse all Laravel packages to compare alternatives.
Last updated
You can install the package via composer:
$ composer require googleshokry/laravel-page-speed
You don't have to do anything else, this package uses the Package Auto-Discovery feature, and should be available as soon as you install it via Composer.
Add the Service Provider to your config/app.php: GoogleShokry\LaravelPageSpeed\ServiceProvider::class
This is required for publishing the configuration file:
php artisan vendor:publish --provider="GoogleShokry\LaravelPageSpeed\ServiceProvider"
Next, the \GoogleShokry\LaravelPageSpeed\Middleware\CollapseWhitespace::class and other middleware must be registered in the kernel:
//app/Http/Kernel.php
protected $middleware = [
...
\GoogleShokry\LaravelPageSpeed\Middleware\InlineCss::class,
\GoogleShokry\LaravelPageSpeed\Middleware\ElideAttributes::class,
\GoogleShokry\LaravelPageSpeed\Middleware\InsertDNSPrefetch::class,
\GoogleShokry\LaravelPageSpeed\Middleware\RemoveComments::class,
\GoogleShokry\LaravelPageSpeed\Middleware\TrimUrls::class,
\GoogleShokry\LaravelPageSpeed\Middleware\RemoveQuotes::class,
\GoogleShokry\LaravelPageSpeed\Middleware\CollapseWhitespace::class,
]


| Name | Description | Available |
| inline_css | Inlines small external CSS files | YES |
| elide_attributes | Removes unnecessary attributes in HTML tags | YES |
| insert_dns_prefetch | Injects tags in the HEAD to enable the browser to do DNS prefetching | YES |
| remove_quotes | Removes unnecessary quotes in HTML tags | YES |
| trim_urls | Removes unnecessary prefixes from URLs | YES |
| collapse_whitespace | Removes unnecessary whitespace in HTML | YES |
| remove_comments | Removes HTML comments | YES |
| combine_css | Combines multiple CSS files into one | NO |
| combine_heads | Combines multiple elements into one | NO |
| combine_javascript | Combines multiple JavaScript files into one | NO |
| dedup_inlined_images | Replaces repeated inlined images with JavaScript that loads the data from the first instance of the image | NO |
| defer_javascript | Defers the execution of javascript in the HTML | NO |
| pedantic | Adds default type attributes to script and style tags that are missing them | NO |
| extend_cache | Improves cacheability | NO |
| fallback_rewrite_css_urls | Rewrite URLs in CSS even if CSS is not parseable | NO |
| flatten_css_imports | Flattens @import rules in CSS by replacing the rule with the contents of the imported resource | NO |
| hint_preload_subresources | Inserts link: headers to preload CSS and JavaScript resources | NO |
| inline_google_font_css | Inlines small font-loading CSS from Google Fonts API | NO |
| inline_import_to_link | Inlines style tags comprising only CSS @imports by converting them to an equivalent link | NO |
| inline_javascript | Inlines small external Javascript files | NO |
| inline_preview_images | Delays original images; serves inlined, low-quality placeholder images until originals are loaded | NO |
| insert_ga | Inserts Google Analytics javascript snippet | NO |
| lazyload_images | Loads images when they become visible in the client viewport | NO |
| local_storage_cache | Loads inlined CSS and image resources into HTML5 local storage whence the client fetches them subsequently rather than the server sending them again | NO |
| make_show_ads_async | Converts synchronous Google AdSense tags to asynchronous format | NO |
| make_google_analytics_async | Converts synchronous Google Analytics code to load asynchronously | NO |
| move_css_above_scripts | Moves CSS above scripts | NO |
| move_css_to_head | Moves CSS into the element | NO |
| outline_css | Moves large inline |