The concept of templates is a fundamental part of almost all web development environments. Examples for server-side template languages are Razor (.NET), Haml (Ruby), Django (Python), Pug (NodeJS), and Smarty (PHP). Examples for client-side template languages can be found in Angular and many more frameworks.
Templates help create dynamic parts, reduce boilerplate code, and avoid repeating markup. The rise of so many template variants in web frameworks, client- and server-side, was forced by a missing alternative ...