Templating engine - Txai-HvA/BlokTech GitHub Wiki
Een template engineis verantwoordelijk voor:
- verbinding maken met het datamodel
- het verwerken van de code gespecificeerd in de source templates
- het sturen van de output naar een specifieke pipeline, tekstbestand of stream. (Tate, D, 2018)
Template engine kiezen
Tijdens het kiezen van de template engine heb ik gekeken naar de syntax en documentatie. Syntax is belangrijk om code makelijk en snel te lezen. Documantie is handig voor als je vast komt te zitten met bijvoorbeeld errors. Uiteindelijk had ik gekeken naar:
- Nunjucks
- Pug
- EJS
- React
Eerst dacht ik eraan om React te gebruiken, maar dit werd afgeraden en ik wilde wel wat anders proberen. Pug heeft veel documentatie, maar ik wilde liever niet werken met code waar haakjes niet aanwezig waren, wat ik minder leesbaar vind. EJS is populair en heeft veel documentatie. Verder lijkt het qua syntax op Nunjucks. Toch heb ik gekozen voor Nunjucks, omdat ik syntax logisch vind en er genoeg documantie is. Het is een combinatie van HTML en hun eigen syntax. Deze lopen door elkaar heen, maar zijn makkelijk uit elkaar te halen, wat het overzichtelijk maakt.
Voorbeeld Nunjucks syntax: