Парадигма
- Именование классов по БЭМ, разметка в
pug
, стилизацияSass
.💡 Рекомендую
- Каждый
БЭМ-компонент
находится в своей директории внутри своегослоя
в./src/components/
. Имена файлов в папке должны совпадать с именем блока. Смотри Компоненты. - Есть файл конфигурации, определяющий попадание в сборку дополнительных файлов и неиспользованных в разметке блоков. Смотри
project.config.js
. - Список pug-примесей
./src/layout/mixins.pug
генерируется автоматически и содержитinclude
существующих pug-файлов всех блоков, не хранится в git. - Диспетчер подключения стилей
./src/styles/style.scss
генерируется автоматически и содержит импорты стилевых файлов использованных в разметке блоков и импорты дополнительных файлов, указанных вproject.config.js
, не хранится в git. - Входная точка обработки js (
./src/scripts/entry.js
) генерируется автоматически и содержит импорты js-файлов использованных в разметке блоков и дополнительных файлов, указанных вproject.config.js
, не хранится в git. - В проекте применяется строгий код-гайд, который проверяется с помощью ESLint, Stylelint, Pug-lint и Prettier перед коммитом (с использованием husky, lint-staged) или вручную.
- Есть команда быстрого создания нового блока:sh
# создаст в директории слоя `atoms` директорию `my-component` # и в ней одноимённые scss-, pug-, js-файлы node new atoms my-component pug js
sh# создаст в директории слоя `atoms` директорию `my-component` # и в ней одноимённые scss-, pug-, js-файлы deno new atoms my-component pug js
sh# создаст в директории слоя `atoms` директорию `my-component` # и в ней одноимённые scss-, pug-, js-файлы bun new atoms my-component pug js