using HandlebarsDotNet.Helpers;
public static void Main()
var handlebarsContext = HandlebarsDotNet.Handlebars.Create();
HandlebarsHelpers.Register(handlebarsContext);
{{#if metadata.comments}}
<div class="chat-container">
{{#each metadata.comments}}
<div class="chat-message {{#Math.Equal this.userId ../userId}}right{{else}}left{{/Math.Equal}}">
<div class="message-box {{#Math.Equal this.userId ../userId}}right-box{{else}}left-box{{/Math.Equal}}">
<div class="user-fullname">{{this.userFullName}}</div>
<div class="message-content">{{this.content}}</div>
<div class="timestamp">{{this.timestamp}}</div>
var template = handlebarsContext.Compile(source);
new {userId = -29, userFullName = "Stoyan Grigorov", timestamp = "1 Jan 2024 3:00PM", content = "Hello 1"},
new {userId = -28, userFullName = "Stoyan Grigorov", timestamp = "1 Jan 2024 3:00PM", content = "Hello 2"},
new {userId = -27, userFullName = "Stoyan Grigorov", timestamp = "1 Jan 2024 3:00PM", content = "Hello 3"},
new {userId = -29, userFullName = "Stoyan Grigorov", timestamp = "1 Jan 2024 3:00PM", content = "Hello 4"}
var result = template(data);
Console.WriteLine(result);