Skip to content

b-laporte/ivy

Repository files navigation

ivy

ivy (aka. iv) is a lightweight JS template engine mixing concepts from ReactJS, Angular2 and Incremental DOM.

It is based on two independent pillars: on one hand, a template syntax named XJS that was designed as a refinement of React's JSX and, on the other hand, a state-management library (trax) that allows to track changes in data objects.

ivy introduces many new concepts, such as

  • templates as functions, that can be read as a sequence of JavaScript statements
  • js statements for loops, conditional blocks, local variables, etc.
  • param nodes to support advanced component APIs with multiple named content blocks
  • decorators to combine multiple behaviors on a same elements (or components)
  • labels to retrieve references to generated HTML elements (or components)
  • CMS content support - to dynamically interpret template fragments served by a CMS
  • pre-processors to inject or modify a template content a compilation time

Please visit ivy documentation page for more details and examples


Code and documentation licensed under MIT

Copyright © 2020 Amadeus SAS

About

js template engine

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •