Inversion is a templating system for Ruby with an Inversion of Control when compared to most templating systems.
What this means is that setting data values in an Inversion template is decoupled from rendering it, allowing you to add data directly from whatever part of the code it is generated
... [More]
rather than requiring that you pass around an intermediate data structure for later combination with the template when it's rendered, without sacrificing encapsulation or exposing unnecessary scope. [Less]