Build tools
Automate painful or time-consuming tasks in your development workflow, so you can stop messing around and build faster.
Build tools
We've included some basic examples of setting up your CSS with common build tools below. For more examples, you can check out our integration guides which will show you how to install Webpixels CSS in other frameworks as well.
1. Using Gulp
Make sure you install and use the required gulp plugins: gulp-autoprefixer
and gulp-sass
and the sass
compiler which will allow you to use the primary implementation of Sass.
With minimal setup, your gulp file should include this rule or similar:
// Load dependencies
const gulp = require('gulp');
const autoprefixer = require('gulp-autoprefixer');
const sass = require('gulp-sass');
sass.compiler = require('sass');
// Tasks
var css = function(done) {
return gulp.src('./src/*.scss')
.pipe(sass({
includePaths: ['node_modules']
}).on('error', sass.logError))
.pipe(autoprefixer())
.pipe(gulp.dest('./dist'));
done()
};
exports.default = gulp.series(css);
2. Using Webpack
Before configuring Webpack, make sure you have the sass module installed which includes Dart Sass - the primary implementation of Sass.
Make sure you install and use the required loaders: sass
, sass-loader
, postcss-loader
with Autoprefixer
.
With minimal setup, your webpack config should include this rule or similar:
module.exports = {
entry: './src/main.js',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist')
},
module: {
rules: [{
test: /\.(scss)$/,
use: [{
// inject CSS to page
loader: 'style-loader'
}, {
// translates CSS into CommonJS modules
loader: 'css-loader'
}, {
// Run postcss actions
loader: 'postcss-loader',
options: {
// `postcssOptions` is needed for postcss 8.x;
// if you use postcss 7.x skip the key
postcssOptions: {
// postcss plugins, can be exported to postcss.config.js
plugins: function() {
return [
require('autoprefixer')
];
}
}
}
}, {
// compiles Sass to CSS
loader: 'sass-loader'
}]
}]
}
};
3. Using Laravel Mix
If you are using Laravel Mix, which is a nice little wrapper built around Webpack, here are the steps of how to setup a simple workflow.
mix.sass('resources/sass/*.scss', 'public/css', {
sassOptions: {
includePaths: ['node_modules'],
}
});