Feature #84928
closedIntroduce JavaScript templating engine
0%
Description
Most client side processing in TYPO3 use jQuery to build new DOM elements dynamically. While this is fine for tiny adjustments it becomes pretty difficult for applications that required much more templating and logic such as conditional rendering or iterations.
In order to improve transparency of templating and easy the possibility to adjust that behavior on the client side a new JavaScript templating engine shall be introduced. Handlebars.js provides a slim and extensible API to just provide template rendering.
Rich application frameworks (e.g. Angular, Vue, Polymer, React, ...) would simply be too much for the first step, besides that it would raise requirements on the build chain and lower the possibility of extensibility through extensions at the same time. For the future it could be considered to introduce a lightweight data-binding framework as well - e.g. Rivet.js or similar solutions.