Skip to content

Search tags, filters, functions and guides.

Guides / Compared with other languages

Guides

Compared with other languages

What Kiln has next to Twig, Nunjucks, LiquidJS and Handlebars.

Kiln has every feature most sites use from Twig, plus async data, server islands, typed props, render limits and tooling. This page compares it with Twig and the most popular JavaScript template languages.

  • Has it
  • Partly. Hover for details
  • Doesn't have it

Layouts and reuse

Feature Kiln Twig Nunjucks LiquidJS Handlebars
Layouts with blocks Yes Yes Yes Yes Partly: Partial blocks
Includes Yes Yes Yes Yes Yes
Macros Yes Yes Yes No No
Components with named slots Yes Yes Partly: One slot No Partly: One slot
Props with types and defaults Yes Partly: Types aren't checked No No No
Includes isolated by default Yes Partly: With only No Partly: With render No
Render a single block Yes Yes No No No

Expressions

Feature Kiln Twig Nunjucks LiquidJS Handlebars
Your own filters and functions Yes Yes Yes Partly: Filters only Partly: Helpers
Arrow functions Yes Yes No No No
Null coalescing with ?? Yes Yes No No No
Missing variables are errors by default Yes Partly: Option Partly: Option Partly: Option Partly: Option

Escaping and safety

Feature Kiln Twig Nunjucks LiquidJS Handlebars
Output escaped by default Yes Yes Yes Partly: Option Yes
Escaping for attributes, JavaScript, CSS and URLs Yes Yes No No No
Safe for templates you didn't write Yes Partly: Opt-in sandbox No Yes Partly: Blocks prototypes
Limits on steps, output and depth Yes No No Yes No

Data and output

Feature Kiln Twig Nunjucks LiquidJS Handlebars
Async data Yes No Partly: Callback API Yes No
Streaming Yes Yes No Partly: Node streams only No
Server islands Yes No No No No
Fragment caching Yes Partly: Extension No No No
Number and date formatting with Intl Yes Partly: Extension No Partly: Dates only No
Plurals for any locale Yes No No No No
Lines up indentation Yes No No No No

Running and tooling

Feature Kiln Twig Nunjucks LiquidJS Handlebars
Runs on Cloudflare Workers Yes No Partly: Precompiled only Yes Partly: Precompiled only
Precompile at build time Yes Yes Yes No Yes
Types generated from templates Yes No No No No
Formatter and language server Yes Partly: Third party Partly: Third party Partly: Third party Partly: Third party

About this comparison

  • Versions. Checked in October 2026 against Twig 3, Nunjucks 3.2, LiquidJS 10.29 and Handlebars 4.7.
  • Built in only. A tick means the feature ships with the language. "Extension" means an official package you install as well. "Third party" means someone outside the project maintains it.
  • Twig runs on PHP. The others run on JavaScript. Twing is a JavaScript port of Twig.
  • Kiln leaves some of Twig out on purpose. For example use, custom delimiters and bitwise operators. See Coming from Twig for the full list.
  • Speed. See the benchmarks for how fast each engine renders real pages.

If something here is wrong or out of date, please open an issue.