Pub Build Status

Jinja 2 server-side template engine for Dart 2. Variables, expressions, control structures and template inheritance.

Draft

All variables passed to the template and literals used in the template are dart objects with their own fields and methods.

To Do

  • Compile templates to fast Dart code
  • Docs
  • Informative error handling
  • Package tests
  • Add missing filters
  • Loaders
    • PackageLoader
    • FunctionLoader
    • PrefixLoader
    • ChoiceLoader
  • Whitespace Control
  • Escaping
  • Line Statements
  • Statements
    • For
      • Recursive
    • Macro
    • Call
    • Filter
    • Set
    • Template Inheritance
      • Include
      • Import
  • Expressions
    • ... if ... else ... condition expression
    • ~ concat

Done

  • Loaders
    • FileSystemLoader
    • MapLoader (DictLoader)
  • Variables
  • Filters
    • abs
    • attr
    • batch
    • default
    • e,escape
    • join
    • list
    • lower
    • sublist
    • sum
  • Tests
  • Comments
  • Statements
    • For
    • If
    • Template Inheritance
      • Extends
      • Block
        • Super
  • Expressions
    • Literals
    • Math
    • Comparison
    • Logic
    • in
    • is tests
    • | filters
    • () call callable
    • ./[] object attribute (. for field, [] for map)

Libraries

jinja