Какая структура файлов правильная?
Использую стандартную под gulp заточенную сборку, уже довольно давно:bower_components
builds
node_modules
src/
    fonts/
    img/
    template/
         header.html
         footer.html
         . . . . . . . .
    js/
         script.js
    sass/
        _base.scss
        _butons.scss
        _fonts.scss
        _forms.scss
        _media.scss
        _mixins.scss
        _sprite.scss
        _style.scss
        _variables.scss
        main.scss
    index.html
.gitignore
bower.json
gulpfile.js
package.json
на выходе можно получить две версии:
/production (минифицированные файлы)
/development 
в зависимости от необходимости, внутри папок стандартный набор:css/
   main.css
   vendor.css
fonts/
img/
js/
   script.js
   vendor.js
index.html
Можно делить не на технологии, а на блоки. У меня так:app
    |__ pages
       |__ index.pug
       |__ category.pug

    |__ blocks
       |__ title
       |__ logo
       |__ button
А если про билд речь то:app
    |__ styles
       |__ fonts
          |__ roboto.woff2
       |__ img
          |__ sprite.svg
          |__ bg.svg
       |__ main.css

    |__ scripts
       |__ main.js
       |__ jquery.min.js

    |__ static
       |__ logo
          |__ logo.svg

    index.html
    category.html