Modern JavaScript provides some surprising features that were before only possible using templating egines such as handlerbars.
function listUsers(list) { return ` <div> ${list.map((user, i) => ` <div> ${user.name} </div> `).join('')} </div> `; }
So in theory, Vanilla JavaScript is good enough for creating websites, or single page applications.