Skip to content
Ian Ker-Seymer edited this page Dec 10, 2023 · 181 revisions

Liquid is a template engine which was crafted for very specific requirements

  • It has to have simple markup and beautiful results. Template engines which don't produce good looking results are no fun to use.
  • It needs to be non-evaling and secure. Liquid templates are made so that users can edit them. You don't want your server running code that your users wrote.
  • It has to be stateless. The compile and render steps have to be separate, so that the expensive parsing and compiling can be done once; later on, you can just render it by passing in a hash with local variables and objects.
  • It needs to be able to style emails as well as HTML.

Stuff to read, watch, etc.

Who uses Liquid?

Why should I use Liquid?

  • You want to allow your users to edit the appearance of your application, but don't want them to run insecure code on your server.
  • You want to render templates directly from the database.
  • You like Smarty-style template engines.
  • You need a template engine which does HTML just as well as emails.
  • You don't like the markup language of your current template engine.