Joomla Extensions

FREE

RokBoosterLatest Version: J2.5 / J3.0 1.1.6

RokBooster
Joomla 2.5Joomla 3.0

CSS, Javascript and Image Compression Increase the speed of your site by enabling the RokBooster plugin. This advanced extension will compress and combine your CSS and JavaScript into as few files as possible each. RokBooster can also convert page and background images to data URLs for increased performance.

RokBooster can dramatically reduce the number of HTTP calls a browser has to make, and sending those compressed files GZipped means your pages will load faster with less load on your server.

Note: Gzip must be installed on your server and enabled in PHP in order to function.

Extension Features

  • Combine and compress CSS and JavaScript into as few files as possible
  • GZip compression used to send CSS and JavaScript files
  • Compress Inline CSS and JavaScript
  • Compress Inline and Background Images
  • Customizable cache timeout
  • Background rendering, so initial file processing won't slow your users down
  • Full page scan allows for non-header JavaScript and CSS to be included
  • Ability to ignore specific CSS and JavaScript files
  • Configurable permissions settings
  • Exempted individual CSS/JS files
NOTE: If your site's CSS goes blank when you activate RokBooster, there is a permission problem on your server. Please change the Cache File Permissions settings in Advanced.

What does this mean in the real world?

To see how this effects a template in the a real world scenario, we'll examine the front-page of the Voxel demo site from a very average 5MB cable connection. We used the Net panel in Firebug for Firefox to get our data.

CSS Files

First we'll see how the site loads the CSS without RokBooster enabled:

RokBooster

As you can see, because Voxel template allows for maximum flexibility with almost unlimited combinations of header/body/footer/backgrounds etc, there are multiple CSS files loaded as well as some of the CSS files needed for the modules used.

Let's turn on RokBooster and see what we get now:

RokBooster

As you can clearly see the 25 original requests have been reduced to 1 request. The 186.5KB of CSS files has been reduced to just 33.6KB (18% of the original size!), and the original 423 ms it took to download the CSS files has been reduced to 166 ms (250% faster!). A drastic improvement!

Javascript Files

Now to see the effects on the JavaScript side. Voxel is an extremely feature-packed template, and we've tried to show off as much as possible on the front page of the demo. This makes it an excellent example to really see the power of RokBooster in action.

First without RokBooster enabled:

RokBooster

Once again, there's a lot of JavaScript there to power all the features and functionality we are showing off on the front page. This of course is a somewhat extreme case, and you probably would not have this much functionality turned on at any one time.

Let's enable RokBooster and see what we get:

RokBooster

Those original 22 requests for the JavaScript elements have been reduced to just 1 request. The 510.5KB has been reduced to just 140.7KB (26% of the original size), and the 806 ms it took before has been reduced to just 322 ms (250% faster!).

Of course RokBooster is not only particular useful with Voxel due to the large amounts of CSS and JavaScript Files, but RokBooster can be applied to any template that implements addScript() and addStyleSheet() functions and should improve your browsing experience significantly.

Installation - Joomla 2.5

Downloading the Extension Files

  • RokBooster Plugin (rokbooster.zip) This file is the plugin package you will use to install RokBooster into Joomla.

Using the Joomla Installer

From the Menu in your Joomla Administrator, go to Extensions → Install/Uninstall.

Next, browse for your rokbooster.zip file you downloaded and then click Upload File & Install.

installation

Accessing the Plugin Page

Next, go to Extensions → Plugin Manager. In the list, you will find System - RokBooster. Click the name in order to enter RokBooster's Plugin Manager where you can set the options. You will want to set the plugin to Enabled for it to start.

Basic Plugin Configuration

Basic Cache Settings

plugin manager

  1. Cache Time delineates the amount of time the cache will remain unchanged before it is flushed for a new file.
  2. Clear Cache button will manually clear the cached files. If the RokBooster is enabled, these files will regenerate when needed.

Style Sheet Settings

plugin manager

  1. Compress CSS Files to combine and compress CSS files.
  2. Sort Method to set the type/method for CSS files sorting, "Keep Absolute Ordering" or "Place External Links at Top".
  3. Compress Inline CSS Blocks to combine all inline css blocks together.
  4. Compile Imported CSS Files to get the files referenced in CSS via @import rules and add them to the compression. This will slow down the compilation and processing, but no the scanning.

Script Settings

plugin manager

  1. Compress Scripts to combine and compress JavaScript files.
  2. Sort Method to set the type/method for JavaScript files sorting, "Keep Absolute Ordering" or "Place External Links at Top".
  3. Compress Inline Scripts to combine all inline JavaScript blocks together.

Image Settings

plugin manager

  1. Max Image Size for Data URIs: The maximum image size to be able to be used for Data URIs. Converting an image to a base64 Data URI add about a 33% overhead. Internet Explorer 8 is limited to 32KB for a Data URI. So a good size to use to support IE would be 21612 bytes..
  2. Inline CSS Images: Convert in CSS references to local images to Data URIs for images smaller then the Maximum Data URI Image Size.
  3. Inline Page Images: Convert in page references to local images to Data URIs for images smaller then the Maximum Data URI Image Size.

Advanced Plugin Configuration

plugin manager

  1. Ignored Files: The paths or urls to files to be ignored by RokBooster. One file per line.
  2. Scan Method: The method to use for script and style identification and replacement, "Joomla Header Scan", "Full Header Scan", and "Full Page Scan".
  3. Use Background Rendering: Recommended. Render the combined and compressed cache files in the background. This will cause the first couple of hits to a page to show with uncompressed and uncollected files until the cache files are created.
  4. Disable for Internet Explorer: Internet Explorer has hardcoded limits on the size of CSS files and rules per file that it can use. This setting lets you disable the compressed files only for IE.
  5. Cache File Permissions: Permissions that the RokBooster cache files are created with. Dont change unless you need to.
Note: If the CSS/JS are not loading with RokBooster published, set Cache File Permissions to Only user can write (0644) and save.

Changelog

This is a changelog for the RokBooster plugin, alpha, beta, release candidate and finals versions.

Joomla 2.5.x / Joomla 3.0.x

Legend:

* -> Security Fix
# -> Bug Fix
+ -> Addition
^ -> Change
- -> Removed
! -> Note

----------- 1.1.6 Release [24-April-2013] -----------      

BUG
# Issue when with output buffers in CSS/JS files when zlib.output_compression is turned on.
# Bug with cache timeout mapping to cache timeout headers for output php files

IMPROVEMENT
# Add Last-Modified Header to outputted CSS and JS php files

----------- 1.1.5 Release [08-February-2013] -----------      

NEW FEATURE
+ Add support to change cache file permissions from the configuration.

----------- 1.1.4 Release [06-February-2013] -----------      

BUG
# Fixed windows server error

----------- 1.1.3 Release [01-February-2013] -----------

BUG
# Getting 354 (net::ERR_CONTENT_LENGTH_MISMATCH) in some cases for background processing
# "Uncaught exception 'Exception' with message 'Can not write to path'" when there is no content to write to cache file

IMPROVEMENT
# Moved to use a shutdown function instead of __destruct to fire background processing.

----------- 1.1.2 Release [01-February-2013] -----------

BUG
# Bug in CSS aggregation replacing or removing some values

----------- 1.1.1 Release [26-January-2013] -----------

BUG
# Notice: Use of undefined constant DS - assumed 'DS' 
# Can not write to path ...cache/rokbooster/

----------- 1.1.0 Release [01-November-2012] -----------

# Fixed Cache Time it shows minutes, but tooltip says seconds
# Fixed strict standards in /Compressor/File.php
# Fixed Editing an article while Booster enabled causes ordering issues in the output of css/js
+ Joomla 3.0 Compatibility
+ Added data URI image conversion

----------- 1.0.2 Release [01-August-2012] -----------

# Issue with Joomla GZip Page Compression and Background Processing mode.

----------- 1.0.1 Release [27-June-2012] -----------

# Issue with mixed path separators on Windows based servers
# Support non js or css files with query strings

----------- 1.0 Release [01-May-2012]-----------

! Initial Release  

----------- Initial Changelog Creation -----------
Member Login: