I am in the process of evaluating different template engines for a project and have the following requirements:
1. A user should be able to assemble a final page layout by picking or ore more page elements from a library of page element templates.
2. A user should be able to specify the order of page elements in the page.
So, I figure this requires some sort of runtime template composition via an api or somehow injecting template elements into a master template in the order the user chooses.
Thymeleaf hasn't got any specific for that feature, but I can't figure out any template engine having that feature.
Maybe a CMS or a portlet container (as Liferay) would better fit your needs.
On the other hand, you could define a set of Thymeleaf includes (your "page elements") and join them in another Thymeleaf template (your "master template"), but you could do that with any template engine.