Результат компиляции никому не важен, html вообще можно минифицировать, и никаких с этим проблем нет)
Просто соблюдайте аккуратную заметку pug исходников.
Евгений Попов: исходники фреймворка вы не правите, в отличие от шаблона) А так, да, вы можете делать отдельный fork от этого шаблона, обновлять по необходимости и исправлять конфликты.
Евгений Попов: не забывайте, что возьмете вы шаблон, начнете от него делать проект - и уже так просто сам шаблон не обновить, то есть его актуальность кончится ровно на том моменте, как вы его клонируете и начнете с ним работать)
рекомендую вам посмотреть в сторону использования JS фреймворков. Это поможет решить вопрос с отделением логики от представления, и привязкой данных, плюс аккуратно организованный javascript код.
klinnov: тогда попробуйте делать как раньше, но подключайте зависимости по одному. Как минимум, сможете найти те, которые вызывают ошибку (если имеет место конфликт двух зависимостей)
Павел Антонов: верстать локально - намного удобнее, как минимум для этого не нужен интернет, и можно не боятся испортить что-то на сервере, куда вы по ftp отправляете файлы.
Вопрос "нужно ли мне это" - для меня не очень понятен, человек либо хочет развиваться и развивается, либо нет, не существует какого-то потолка необходимых знаний)
И если вы используете Angular 1.5 версии и выше, можете вместо директивы использовать компоненты, это на порядок удобнее.
И вы сможете организовать поток данных, идущий в одном направлении - вместо users: '=', использовать users: '<', в этом случае в вашем компоненте autocomplete не будет происходить реального изменения объекта users, а только его копии.
Вы можете в entry указывать несколько точек входа, и подключать в нужном шаблоне нужный скрипт - бандл.
Что бы в будущем не возникало проблем из-за привязки к селекторам, попробуйте использовать js фреймворк. Например, посмотрите как php фреймворк Laraver используется вместе с Vue.js - https://laravel.com/docs/5.4/frontend