@taskr/postcss
#Install
$ npm install --save-dev @taskr/postcss
#API
#.postcss([options])
Check out PostCSS's Options documentation to see the available options.
Note: There should be no need to set
options.toandoptions.from.
If you would like to autoload external PostCSS config, you must not define any options directly.
#Usage
#Embedded Options
Declare your PostCSS options directly within your
taskfile.js:
exports.styles = function * (task) {
yield task.source('src/**/*.scss').postcss({
plugins: [
require('precss'),
require('autoprefixer')({
browsers: ['last 2 versions']
})
],
options: {
parser: require('postcss-scss')
}
}).target('dist/css');
}
#Autoloaded Options
Automatically detect & connect to existing PostCSS configurations
If no options were defined, @taskr/postcss will look for existing .postcssrc, postcss.config.js, and .postcssrc.js root-directory files. Similarly, it will honor a "postcss" key within your package.json file.
.postcssrc-- must be JSON; see example.postcssrc.js-- can be JSON ormodule.exportsa Function or Object; see examplepostcss.config.js-- can be JSON ormodule.exportsa Function or Object; see examplepackage.json-- must use"postcss"key & must be JSON; see example
Important: If you take this route, you only need one of the files mentioned!
// taskfile.js
exports.styles = function * (task) {
yield task.source('src/**/*.scss').postcss().target('dist/css');
}
// .postcssrc
{
"plugins": {
"precss": {},
"autoprefixer": {
"browsers": ["last 2 versions"]
}
},
"options": {
"parser": "postcss-scss"
}
}
#Support
Any issues or questions can be sent to the Taskr monorepo.
Please be sure to specify that you are using @taskr/postcss.
#License
MIT © Luke Edwards
See also
taskr(3), clsx(3), @polka/cluster(3), @pwa/cli(3), uvu(3), sockette(3), klona(3), kleur(3), dequal(3), sirv-cli(3)