Extendware Minify JS / CSS / HTML Magento Extension Review
JavaScript, CSS, and HTML minification is a process that will essentially speed up your ecommerce website. We’ve already described it in our Magento Performance Guide, and today we are going to introduce you to a reliable tool designed to perform the aforementioned actions. In addition to increased productivity, you will also get better search engine site rankings, conversion rate, and user experience. The Extendware Minify JS / CSS / HTML Magento extension achieves this goals by reducing page size, request count, bandwidth, and server load. You only have to install the module and configure a few options.
Two core principles behind Extendware Minify JS / CSS / HTML are file optimization and browser cache enhancement. Both provide vital bumn in site performance and we all know that site speed cannot be overstated. A slow ecommerce storefront reduces search engine rankings that often leads to lessened traffic and lost sales. Nobody wants to lose sales, right? Therefore, let’s have a look at what Extendware tells about the module.
The product image illustrates the performance before and after Extendware Minify JS / CSS / HTML is installed. Two core parameters used to describe the module are HTTP Requests and Total Weight. Two states used to illustrate the performance before and after the extension are Empty Cache and Primed Cache. In case of Empty Cache the default number of HTTP Requests is 47 and the total page weight is 227.7KB. In case of the Extendware Minify JS / CSS / HTML extension, we have the following results: HTTP Requests – 31. Total Weight – 179.1KB. The number of requests is reduced by 16, and the weight is reduced by 48.6KB. In case of primed cache, the number of requests is reduced by 42 (46;4) and the weight is reduced two times (7.8; 3.9).
The Extendware Minify JS / CSS / HTML Magento extension works with CSS, JS, and HTML files. Besides, it provides impact on cache usage. CSS and JS files will are minified, compressed, and merged. As for HTML and inline CSS/JS files, they are just minified. It is also necessary to mention that forever expirations are be placed on CSS/JS files for more effective browser cache usage. The module works great with Extendware FPC, making your Magento installation lightning fast.
Before we go any further, take a look at what other people think about the extension:
Core Features
- JavaScript, CSS, and HTML Minification. By reducing the size of Javascript, CSS, and HTML files, you will get a vital performance increase. The extension provides the ability to use 1 of the following technologies: JSMin, JSMin Plus, Closure Compiler, and YUI Compressor. All of them remove comments, rewrite CSS statements more efficiently, remove white space, and rewrite JS variables. There is even the ability to minify inline JS / CSS. For the default Magento installation, the extension offers 40% savings for JS, 120% savings for CSS, and 29% savings for HTML.
- JavaScript Deferment. To make your store even faster, the module allows you to defer JS loading to eliminate render-blocking JS. As a result, your page loads will not be blocked while waiting for JS to be loaded improving Google page speed score.
- Inline JS and CSS. As mentioned above, the Extendware Minify JS / CSS / HTML extension supports inline JS and CSS minification. Since internal JavaScript and CSS files cannot be cached by the browser, they are downloaded on every page request. Therefor inline JS and CSS minification becomes a great time-saver, especially when other solutions ignore that data.
- JS and CSS Versioning. The module even helps you to have only up-to-date content without flushing caches or waiting for files to be updated on the frontend. All files are updated immediately.
- Intelligent Combination of JS and CSS Files. The extension reduces the number of Web server requests by 16; consequently, request latency and bandwidth are also reduced, and the server can handle more requests per second. And unlike other solutions, Extendware Minify JS / CSS / HTML combines files intelligently, decreases total bandwidth even more, so there is no need to re-download duplicated Javascript / CSS files when navigating from one page to another.
- JS and CSS Compression. JS and CSS files are compressed via 3 different algorithms: gzip, gzdefalt, and gzcompress. Note that to avoid compressing on a per-request basis, files are pre-compressed. As a result, latency and CPU load are reduced.
- Non-Standard JS and CSS Files Minification. Chances are, your Magento installation contains some files that do not comply with Magento standards (CSS and JS are directly output to the theme). Most of the minification modules do not work with them, but Extendware Minify JS / CSS / HTML provides the technology that helps find these files and minify them.
- Browser Cache Management. The extension works with forever expiries added to JS and CSS files. Once downloaded, these files can be used without making another request until the cache is cleared or filenames are changed. This helps to speed up the website. To make all changes available immediately, the module changes filenames to initiate a new request.
- URL Hostnames. The Extendware Minify JS / CSS / HTML Magento module support selecting custom hostnames to maximize the number of browser connections. The ordinary limit is 2-5 connections per hostname. The more connections the browser makes – the less is download time.
- Various Minification Algorithms. As we’ve already mentioned, there are 4 minifications algorithms available within the extension. Each one has its unique characteristics and requirements, so you can effortlessly choose one that suits your needs.
- CDN Support. You can fully leverage the extension even if your online storefront is connected to a CDN.
If you think that some features can be added, contact Extendware to share your thoughts – the company always tries to make its products better.
Now, when you are familiar with what Extendware Minify JS / CSS / HTML for Magento does, let’s have a look at how it works from the perspective of an admin user.
Backend
To configure the extension, go to Extendware -> Manage Extensions -> Minify JS / CSS -> Configure. Here, you have 3 tabs with settings: General, Files, and Advanced.
In General settings, you can specify the location of Java and PHP; Execution Mode that is applied to PHP minifiers (External or Internal); enable/disable Modified Time Check (if disabled, you should flush cache manually) and URL Rewriting (required for the pre-compression of JS and CSS).
Under the Files tab, there are two sections: Frontend Files and Frontend Page.
In Frontend files, you choose merging mode for JS and CSS (Always, Automatic, Automatic (Aggressive), Never) and specify JS Minifier (Closure Compiler (online), Closure Compiler (java), YUICompressor (java), JSMinPlus (php), JSMin (php), or None) as well as CSS Minifier (YUI Compressor (java), CSS Compressor (php), or None). Next, you add non-standard JS and CSS files.
Another set of options helps to control JS deferring. Note that the feature is absolutely experimental and yet not supported, so you should fully understand your responsibility. First of all, you enable it (Defer JS), then add Defer URL Filters and specify JavaScript that will be executed before and after the deferred JS is loaded.
The last two options are: URL Filters and Ignore Merging. The first one lets you specify pages where JavaScript, CSS, and HTML should not be be minified and merged. The second option lets you input a string to disable file merging if the file matches the string. Utilize the feature for files that cannot be merged well.
The Frontend Page section enables you to activate HTML minification (note that themes and plugins that are not compliant with Magento standards give errors if the feature is enabled); choose Template Mode (Page (advanced), Page (simple), Template, and Both Template + Page (simple)) – the feature that determines how your HTML is minified and makes pages 4-5% smaller; select JS Minifier (Closure Compiler (online), Closure Compiler (java), YUICompressor (java), JSMinPlus (php), JSMin (php), or None) and CSS Minifier (YUI Compressor (java), CSS Compressor (php), or None); as well as add Template Filters.
In Advanced Settings, you also have two sections: Hostnames and Custom Paths. Note that different hostnames for different resources speed up downloads. Specify Header Resources and CSS Images by entering only valid hostnames. As for the Custom Paths section, it allows you to specify a custom path for JavaScript. If the field is blank, the default JS path is used. The same is about hostnames.
Final Words
Since JS, CSS, and HTML minification is vital for good performance, Extendware Minify JS / CSS / HTML Magento extension is a highly desirable tool that will essentially speed up your store. As we’ve just illustrated, the module has a very intuitive and at the same time customizable backend. And due to a wide variety of settings the extension can be fine tuned according to the requirements of the most demanding websites. For further performance improvements, check these posts: Magento Performance Ultimate Guide and The Magento 2 Performance Guide.
It is also necessary to tell a few words about the extension’s price. You can purchase Extendware Minify JS / CSS / HTML for only $89 which is the most democratic price tag ever seen. Note that Extendware offers a 30-day money-back, so you don’t have to be afraid about the investment. Although it can be easily returned, we don’t believe that you will leave your ecommerce storefront without such a dramatic speed improvement.