March 30, 2024
Tinkering With Ktor 2: Using HTML DSL for page templates
Photo by Pankaj Patel on Unsplash Summary There are a bunch of templating engines available for Ktor, each one with its own strengths and weaknesses. But, I don’t like that I have to add yet another engine to the runtime (especially when I plan to run React or Vue anyway) so why not try using a simple feature of Kotlin to build our html? Kotlin DSL (Domain Specific Language) capabilities, while having a steep learning curve if you never used them before can be used structures that closely mimic html. This is not a new idea, there have been several attempts at this and the most popular one is the kotlinx.html library. Ktor team already created a convenient way to plug this library into your Ktor project, called ktor-server-html-builder. The kotlinx.html library gives us the basic components of HTML and we can extend that further if we want. Let’s see what can be accomplished with these.
Read more