- Для установки всех зависимостей:
npm install; - Для запуска сборщика Gulp нужно использовать:
npm run dev;
- собирает SCSS файлы, добавляет вендорные префиксы;
- сортирует и группирует медиа-запросы;
- конвертирует шрифты в
.ttf, и из.ttfвwoff/woff2; - создает файл для подключения шрифтов. Данный файл создается по такому пути:
src/scss/config/fonts.scss, выглядит это так:
@font-face {
font-family: Inter;
font-display: swap;
src: url('../fonts/Inter-Bold.woff2') format('woff2');
font-weight: 700;
font-style: normal;
}- и другое...
Если в папке
src/scss/config- уже есть файлfonts.scss- тогда при добавлении новых шрифтов НУЖНО УДАЛИТЬ старый файлfonts.scss. Не переживай, при повторном запуске сборки - Gulp все новые шрифты сконвертирует и создаст новый файлfonts.scss.
Дальше, что еще умеет сборка:
- копирует папку
/vendorс содержимым в финальную сборку. То есть любые файлы можно поместить в эту папку и она будет добавлена в финальную сборку без лишней обработки; - отдельной командой
npm run svgSpriveсоздает "svg спрайты"; - перед каждым запуском сборщика чистит папку с финальным проектом, чтобы не собирать мусор;
- отдельной командой
npm run zipможно заархивировать финальную папку для заказчика с именем проекта; - так же для разработки
gulpзапускает сервер с автоматической перезагрузкой окна в браузере при изменении файлов в проекте; - есть поддержка шрифтов с такими названиями например: "
Inter-Regular[ |-|_|__][I|i]talic" - такие названия Gulp правильно обработает и запишет в стилиfont-style: normal/italic; - конвертация шрифтов происходит в папке
src/fontsот туда шрифты с расширением.woff2переносятся вdist/fonts. Если файл для подключения шрифтов уже создан - gulp просто перенесет шрифты*.woff2вdist/fontsбез лишней трудозатратной конвертации.
- именно
webpackв данной сборке занимается обработкой файлов c JavaScript; - поддерживается модульное подключение скриптов
import/export; - позволяет создавать больше одного файла скриптов, чтобы подключать их на отдельные
htmlстраницы, для этого в корне папки./src/jsсоздай нужный тебе файл; - при импорте нет необходимости писать расширение файла
.js, так же если осуществляется импорт из файлаindex.jsнеобязательно это указывать:
import * as helpers from './helpers' // './helpers/index.js'webpackc помощьюesbuild-loaderпозволяет тебе писать код на любимом ES6+;