|
Project Information
Members
Featured
Downloads
Wiki pages
Links
|
Minify is a PHP5 app that helps you follow several of Yahoo!'s Rules for High Performance Web Sites. It combines multiple CSS or Javascript files, removes unnecessary whitespace and comments, and serves them with gzip encoding and optimal client-side cache headers.
The stats above are from a brief walkthrough which shows how easy it is to set up Minify on an existing site. It eliminated 5 HTTP requests and reduced JS/CSS bandwidth by 70%. The design is somewhat similar to Yahoo's Combo Handler Service, except that Minify can combine any local JS/CSS files you need for your page. Minify integrated into other Projects/Plugins
News2011-07-05 Minify's active code branch has moved. Now accepting pull requests! 2010-07-08 2.1.4 beta out. Lots of new stuff. 2010-05-24 Minify integrated into Moodle 2.0 2009-09-23 New CookBook (improving performance and more configuration) and other new wiki pages. 2009-06-30 Minify 2.1.3 released, fixing some CSS and HTTP bugs (notably improving caching in webkit browsers). See History for more details. Features
Requirements
InstallationSee the UserGuide. Support ListPHP5 Component ClassesMinify is based on several PHP5 classes that may be useful in other projects (all BSD licensed). Warnings
Problem DomainPages that refer to multiple CSS or JavaScript files often suffer from slower page loads, due to the browser requesting each file individually. Many browsers also are limited to a few simultaneous requests per domain. The wait for a series of requests and the transfer of unoptimized files can dramatically reduce the client-side performance of your site. Here are some of Yahoo!'s best practices that are addressed by the use of Minify.
AcknowledgmentsMinify was inspired by jscsscomp by Maxim Martynyuk and by the article 'Supercharged JavaScript' by Patrick Hunlock. The JSMin library used for JavaScript minification was originally written by Douglas Crockford and was ported to PHP by Ryan Grove specifically for use in Minify. You may contact Steve Clay (steve@mrclay.org) or Ryan (ryan@wonko.com) if you're interested in joining the project. |