Стартовая сборка для Фронтенда
- gulp-autoprefixer — автоматически расставляет вендорные префиксы в CSS в соответствии с сервисом Can I Use;
- gulp-pug — компиляция Pug в HTML;
- gulp-concat - конкатенация файлов;
- gulp-sass — компиляция SASS,SCSS в CSS;
- gulp-rename — переименование файлов;
- gulp-sourcemaps — создание карты sourcemap;
- gulp-notify — уведомление о событиях;
- gulp-csso — объединение дублирующихся классов;
- gulp-watch — отслеживание изменений в файлах проекта;
- Browsersync — автообновление браузера;
- gulp-svg-sprite — создание svg спрайта;
- gulp-svgmin — минификация SVG;
- gulp-cheerio — удаление лишних атрибутов из svg;
- gulp-replace — фиксинг возможных багов при сборке svg спрайта;
Установить Node JS
Далее, используя cmd
в Windows или Терминал Linux/macOS, проделайте следующие шаги:
- Скачать сборку:
git clone https://github.com/Berzeg07/build_gulp4.git
; - Ставим утилиту глобально
$ npm install gulpjs/gulp-cli -g
; - Устанавливаем
Gulp 4
в папку с проектом$ npm install gulp --save-dev
; - Проверка версии gulp и чтобы убедиться, что все корректно установлено:
gulp - gulp -v
;
- Устанавливаем пакеты из package.json:
npm i
; - Основная команда:
gulp
запускает слежку за файламиgulp-watch
иbrowserSync
- Сборка проекта:
gulp-build
проект собирается в папкеbuild
- В настройках таска
browserSync
можем указывать страницу с которой на данный момент работаем
module.exports = function() {
$.gulp.task('serve', function() {
$.bs.init({
server: {
baseDir: "./build",
index: "page.html"
}
});
});
}
- Работа ведется в папке:
src
; src/pug/layout/layout.pug
основной шаблон проектаsrc/pug/includes/*
директория контентой части проекта и повторяющихся блоков сайта (header, footer), подключаем в нужном месте шаблонаinclude ../includes/header
src/pug/pages
папка для всех страниц проекта. Главная страница index.pug с подключенным шаблономlayout.pug
, контентная часть разбита на три инклюдаheader, content-main, footer
все страницы проекта создаются по аналогииsrc/pug/includes/mixins.pug
миксины pugsrc/pug/includes/links.pug
все подключения файлов вhead
src/pug/includes/footer.pug
все подключения скриптов в блокеfooter
src/static/libs
файлы библиотек
gulp/gonfig/tasks.js
массив с установленными плагинами галпа;gulp/tasks/
все таски разбиты на отдельные файлы и подключены вgulp/gonfig/tasks.js
;- После установки нового плагина через
npm
необходимо добавить его в массивgulp/config/tasks.js
; - Создать новый файл в
gulp/tasks/
с настройками плагина - Добавить обработку плагина в
gulp/tasks/watch.js
- Добавить обработку плагина в
gulpfile.js
в таскиdefault
иbuild