Purges duplicate CSS rules and more. Based on css-purge.
This is a simple grunt plugin, which means it’s a thin wrapper around css-purge
. If you are having CSS issues, please
contact css-purge. Please only create a new issue if it looks like you’re having a problem with the grunt plugin.
npm install grunt-css-purge --save-dev
Visit the CSS-PURGE website
This plugin requires Grunt.
If you haven’t used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you’re familiar with that process, you may install this plugin. Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-css-purge');
The most basic Gruntfile.js
setup:
'use strict';
module.exports = function( grunt ) {
grunt.loadNpmTasks('grunt-css-purge');
grunt.initConfig({
css_purge: {
site: {
options: {},
src: 'site.css',
dest: 'site.min.css',
},
},
});
grunt.registerTask('default', ['css_purge']);
};
For more infos about the options please look at the CSS-Purge website.
See below a couple different ways you can use the grunt task with various different files.
A single file:
default_options: {
options: {},
src: 'site.css',
dest: 'site.min.css',
},
Multiple files:
multiple_files: {
options: {},
src: [
'site1.css',
'site2.css',
],
dest: 'site.min.css',
},
Multiple files:
multiple_files2: {
options: {},
files: {
'site.min.css': ['site1.css', 'site2.css'],
},
},
Multiple files with a wildcard:
multiple_files3: {
options: {},
files: [{
src: ['css/**/*.css'],
dest: 'site.min.css',
}],
},
Purge a folder as is into multiple files:
multiple_files4: {
options: {},
files: [{
expand: true,
cwd: "css/", // all *.css files inside the css/ folder will be purged
src: "*.css",
dest: "output/", //and placed into the output folder
ext: ".min.css",
}],
},
Purge a folder as is into multiple files while keeping sub-folder intact:
multiple_files5: {
options: {},
files: [{
expand: true,
cwd: "css/",
src: "**/*.css", // all *.css files in the css/ and it's sub-folders will be purged
dest: "output/", //and placed into the output folder
ext: ".min.css",
}],
},
Custom options:
custom_options: {
options: {
trim_comments: false,
generate_report: true,
},
src: 'site.css',
dest: 'site.min.css',
},
In lieu of a formal styleguide, take care to maintain the existing coding style.
- 1.1.0 - Mad task async
- 1.0.2 - Fixed to major
css-purge
version - 1.0.1 - Reduced dependencies
- 1.0.0 - Updated to CSS-Purge 3.0.0
- 0.0.4 - Updated peerDependencies for grunt 1.0
- 0.0.3 - updated license
- 0.0.2 - refinements
- 0.0.1 - alpha test
Copyright (c) 2018 Dominik Wilkowski. Licensed under the GPLv2 license.