Я бы не стал так все в одну кучу валить.
pug — это не только шаблонизатор, но и препроцессор, то есть он предоставляет альтернативный, во многом удобный синтаксис.
Для vue/react генерация html это только часть обязанностей, они еще должны аккуратно и быстро обновлять его и реагировать на пользовательский ввод.
Если проект не предусматривает динамического фронтенда, то вполне можно обойтись одним шаблонизатором — pug/handlebars/что хотите. Далеко не везде нужен SSR.
P.S. то, что react нельзя использовать с pug — это личные половые трудности сугубо реакта. Я использую vue+pug и доволен как слон:)