На данный момент, структура такая:
static/
├── build
│ ├── css
│ │ └── main.css
│ ├── fonts
│ ├── images
│ └── js
│ └── main.js
└── src
├── blocks
│ ├── footer
│ └── header
│ ├── header.js
│ └── header.scss
├── fonts
└── images
Работаем в
src, собираем в
build. Используем БЭМ.
Структура нормальная, но вот с зависимостями
bower - проблемы. С
js и
css все понятно, все хорошо.
Проблема со шрифтами и с изображениями - куда их надо копировать? Ясно, что копируем в
src из
bower_components. Шрифты и изображения копировать в
src/fonts и
src/images - так себе решение, могут быть конфликты с именами (одинаковые названия изображений у разных зависимостей
bower).
На мой взгляд, тут два решения:
src
├── blocks
│ ├── footer
│ └── header
│ ├── header.js
│ └── header.scss
├── dependency1
├── dependency2
├── fonts
└── images
При такой структуре, копируем шрифты и изображения из папки
bower_components в соответствующую директорию внутри
src. При этом, возникает еще два вопроса: надо ли сохранять структуру папок внутри зависимости (к примеру,
dependency1/dest/assets/img/hello.png) или сделать ее плоской (
dependency1/img/hello.png)?
Альтернативная структура:
src
├── blocks
│ ├── footer
│ └── header
│ ├── header.js
│ └── header.scss
├── fonts
│ ├── dependency1
│ └── dependency2
└── images
├── dependency1
└── dependency2
Думаю, в этом случае, все понятно. Вопросы возникают такие же, как при структуре выше.
Как быть?
P.S. Буду очень рад вашим структурам или гайдам с best practices.