gulp default
- сборка в режиме разработки.
Сборка инкрементная - т.е emitty индексирует каждую страницу с расширением pug и при изменении на одной странице пересоберется именно эта страница, а не весь проект (если это не миксин конечно). Из-за этого сборка идет чуть дольше, но пересборка работает быстрее
gulp build
- сборка в режиме релиза
12.22.6
- версия npm для сборщика
gulp и gulpfile.babel.js
- конфиг сборщика
src
- основная папка, в ней ведется вся разработка
public
- папка куда сборщик кладет собранный проект, в нем ничего не менять. При пересборке все затрется
fonts
- шрифты
images
- все изображения/иконки и т.д
js
- скрипты. Содержит:
vendor
- библиотеки, сторонние зависимости и т.д (не обязательно использовать эту папку, можно подключать из node_modules)modules
- т.к к проекту не подключен вебпак - решено было использовать отдельные файлы для отдельных модулей на страницах, но крайне рекомендую к gulp подключить вебпак, так разработка будет быстрее и проще- файл
vendor.js
тут подключаются скрипты из папки vendor - файл
script.js
тут общие скрипты для всех страниц
styles
- стили. Содержит стили проекта и подключенных библиотек
assets.scss
- стили библиотек и зависимостейstyle.scss
- тут подключаются индексные файлы каждой папки. В каждой папке есть файлindex.scss
, в котором идет подключение компонентов внутри папки
templates
- шаблоны
components
- компоненты, подключаемые к страницам без измененийmixins
- миксины, компоненты которые при подключении нужно в чем то унифицировать (например задать уникальный id и т.д)- все что в корне папки - шаблоны отдельных страниц.
Фронтовая часть проекта деплоится на firebase командой firebase deploy
+есть автодеплой при в prepush хуке с помощью husky
Чтобы можно было деплоить на firebase пройди следующие шаги:
- npm i -g firebase-tools
- firebase login (должен быть акк на firebase с доступом к проекту)
- firebase use default
- firebase deploy