Skip to content

Instantly share code, notes, and snippets.

@airarm
Last active August 23, 2023 11:44
Show Gist options
  • Save airarm/22fde55034548c9cbc3b1ed51adee291 to your computer and use it in GitHub Desktop.
Save airarm/22fde55034548c9cbc3b1ed51adee291 to your computer and use it in GitHub Desktop.
const {src, dest, watch, series} = require('gulp');
const sass = require('gulp-sass')(require('sass'));
const prefix = require('gulp-autoprefixer');
const minify = require('gulp-clean-css');
const terser = require('gulp-terser');
const rename = require('gulp-rename');
const concat = require('gulp-concat');
function compilerSass ()
{
return src('styles/main.scss')
.pipe(sass())
.pipe(prefix())
.pipe(minify())
.pipe(rename('style.min.css'))
.pipe(dest('dist/css'));
}
function jsMin()
{
return src('scripts/main.js')
.pipe(terser())
.pipe(rename('main.min.js'))
.pipe(dest('scripts'));
}
function jsBundle()
{
return src([
'scripts/jquery.min.js',
'scripts/main.min.js',
])
.pipe(concat('script.min.js'))
.pipe(dest('dist/js'));
}
function watchTask()
{
watch('styles/**/*.scss', compilerSass);
watch('scripts/main.js', jsMin);
watch('scripts/main.min.js', jsBundle);
}
exports.default = series(
compilerSass,
jsMin,
jsBundle,
watchTask
);
exports.build = series(
compilerSass,
jsMin,
jsBundle
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment