Created
March 15, 2022 15:31
-
-
Save JCervantesB/1511e29715dba36bdcec4fc8565524b0 to your computer and use it in GitHub Desktop.
FestivalMusica
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { src, dest, watch, parallel } = require('gulp'); | |
// CSS | |
const sass = require('gulp-sass')(require('sass')); | |
const plumber = require('gulp-plumber'); | |
const autoprefixer = require('autoprefixer'); | |
const cssnano = require('cssnano'); | |
const postcss = require('gulp-postcss'); | |
const sourcemaps = require('gulp-sourcemaps'); | |
// Imagenes | |
const cache = require('gulp-cache'); | |
const imagemin = require('gulp-imagemin'); | |
const webp = require('gulp-webp'); | |
const avif = require('gulp-avif'); | |
// Javascript | |
const terser = require('gulp-terser-js'); | |
function css( done ) { | |
src('src/scss/**/*.scss') // Identificar el archivo .SCSS a compilar | |
.pipe(sourcemaps.init()) | |
.pipe( plumber()) | |
.pipe( sass() ) // Compilarlo | |
.pipe( postcss([ autoprefixer(), cssnano() ]) ) | |
.pipe(sourcemaps.write('.')) | |
.pipe( dest('build/css') ) // Almacenarla en el disco duro | |
done(); | |
} | |
function imagenes(done) { | |
const opciones = { | |
optimizationLevel: 3 | |
} | |
src('src/img/**/*.{png,jpg}') | |
.pipe( cache( imagemin(opciones) ) ) | |
.pipe( dest('build/img') ) | |
done(); | |
} | |
function versionWebp( done ) { | |
const opciones = { | |
quality: 50 | |
}; | |
src('src/img/**/*.{png,jpg}') | |
.pipe( webp(opciones) ) | |
.pipe( dest('build/img') ) | |
done(); | |
} | |
function versionAvif( done ) { | |
const opciones = { | |
quality: 50 | |
}; | |
src('src/img/**/*.{png,jpg}') | |
.pipe( avif(opciones) ) | |
.pipe( dest('build/img') ) | |
done(); | |
} | |
function javascript( done ) { | |
src('src/js/**/*.js') | |
.pipe(sourcemaps.init()) | |
.pipe( terser() ) | |
.pipe(sourcemaps.write('.')) | |
.pipe(dest('build/js')); | |
done(); | |
} | |
function dev( done ) { | |
watch('src/scss/**/*.scss', css); | |
watch('src/js/**/*.js', javascript); | |
done(); | |
} | |
function tarea (done) { | |
console.log('Desde la primera tarea'); | |
done(); | |
} | |
exports.tarea = tarea; | |
exports.css = css; | |
exports.js = javascript; | |
exports.imagenes = imagenes; | |
exports.versionWebp = versionWebp; | |
exports.versionAvif = versionAvif; | |
exports.dev = parallel( imagenes, versionWebp, versionAvif, javascript, dev) ; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment