Template Engines
Built-in Support
Clovie supports popular template engines out of the box:
// Handlebars
import Handlebars from 'handlebars';
export default {
renderEngine: (template, data) => {
const compiled = Handlebars.compile(template);
return compiled(data);
}
};
// Nunjucks
import nunjucks from 'nunjucks';
export default {
renderEngine: (template, data) => {
return nunjucks.renderString(template, data);
}
};
// Pug
import pug from 'pug';
export default {
renderEngine: (template, data) => {
return pug.render(template, { ...data, pretty: true });
}
};
Custom Template Engine
export default {
renderEngine: (template, data) => {
// Simple variable replacement
return template.replace(/\{\{(\w+)\}\}/g, (match, key) => {
return data[key] || match;
});
}
};
String-based Engine Selection
export default {
renderEngine: 'handlebars', // Auto-configures Handlebars
// Also supports: 'nunjucks', 'pug', 'mustache', 'eta'
};