- Собранная верстка находиться в папке
app
- Для шаблонизации используется движок twig, исходники тут
source/html
- Установить Node.js последнюю LTS версию
- Обновить npm
npm install -g npm
- Установить gulpjs 4
npm install -g gulp
и browsersyncnpm install -g browser-sync
- В консоли перейти в директорию с проектом с помощью команды cd путь/до/шаблона
- Запустить команду npm install
- После этого можно запустить дефолтную задачу командой gulp (в директории с шаблоном)
Все задачи находятся в папке gulp/tasks, файл gulp/app.js отвечает за конфигурацию задач.
npm run start
- стандартная задача, запускает сборку проекта, а так же отслеживание файлов и локальный серверnpm run build
- запускает только сборку проекта в css/js не добавляется карта исходников,npm run html
- файл gulpfile.babel.js/tasks/html.js отвечает за сборку twig файлов, забирая исходники из этой папки source/html, собирает в один html файл и отправляет в папку app.npm run sass
- запускает генерацию из source/sass/*.scss файлов в css и отправляет их в папку /css, генерируются только файлы в корне и без префикса _ в имени (т.е. файл _test.scss останется нетронутым, а файл test.scss сгенерируется в файл test.css). Настройки сжатия генерируемых файлов находится в файле gulpfile.babel.js/config/app.js. Подробнее о типах сжатия на сайте sass-lang.com. Так же в папке /css/map создается карта css (source map), она помогает найти где находятся css свойства в оригинальных scss файлах (поддержку карт нужно выключить в настройках инструментов разработчиков Chrome/FireFox), поэтому имеет смысл загружать на сервер и css и исходники scss.npm run images
- файл gulpfile.babel.js/tasks/images.js отвечает за сжатие изображений, эта задаче берет файлы из папки source/images/assets сжимает их и переносит в папку images/ структура папок сохраняетсяnpm run sprite
- задача генерирует спрайты из svg в папке source/images/sprite и сохраняет их в папку /images/ при этом генерирует файл с scss переменными в source/sass/helpers/_sprite.scss. Настройки в файле gulpfile.babel.js/config/app.jsnpm run js
- задача генерирует javascript в dev режиме source/jsnpm run test
- задача запуска тестов Jestnpm run test:watch
- задача запуска отслеживания тестов Jestnpm run test:coverage
- задача запуска отображения покрытия тестов Jest