elixir-imagemin
v1.0.0
Published
Laravel Elixir wrapper around imagemin Gulp task.
Downloads
3
Readme
elixir-imagemin
This is a simple imagemin wrapper around Laravel Elixir. Add it to your Elixir-enhanced Gulpfile, like so:
Install
npm install --save-dev elixir-imagemin
Usage
Example Gulpfile:
var elixir = require('laravel-elixir');
require('elixir-imagemin');
elixir(function(mix) {
mix.imagemin();
});
This will scan your resources/assets/img
directory for all image files.
Changing the default image directories
If you want to process a different image directory, you can update your Elixir config by either:
Defining elixir.config.img
in your Gulpfile
You can define elixir.config.img
in your gulpfile.js
like so:
var elixir = require('laravel-elixir');
require('elixir-imagemin');
elixir.config.img = {
folder: 'images',
outputFolder: 'images'
};
elixir(function(mix) {
mix.imagemin();
});
Setting config.img
in an elixir.json
file
You can create an elixir.json
file in your project root to modify Elixir's default settings.
{
"img": {
"folder": "images",
"outputFolder": "images"
}
}
Upgrading from the old syntax
If you're upgrading from the old syntax, where you defined custom directories like so:
mix.imagemin("./resources/assets/img", "public/img/foo/bar/");
All you have to do is:
- Remove the first two parameters, then
- Follow the instructions for "Changing the default image directories"
Note: You don't define the full path anymore. Instead of resources/assets/img
you simply use img
, because
elixir-imagemin will look inside your assets
and public
directories (or whatever else you may have
configured).
Custom imagemin options
You can override the default imagemin options by passing in an options object like so:
mix.imagemin({
optimizationLevel: 3,
progressive: true,
interlaced: true
});
Available imagemin options are listed here in the gulp-imagemin readme.