diff --git a/ltm/README.md b/ltm/README.md new file mode 100644 index 0000000..6f0a86c --- /dev/null +++ b/ltm/README.md @@ -0,0 +1,32 @@ +# LTM - Lander Template Module + +This module provides an interface for generating `char` streams from a given +template. + +```html + +

{{ title }}

+ + +``` + +The above snippet shows everything the templating language currently offers; +either singular variables (here: `title`) or nested templates (here: `item`). +Note the absence of a loop construct. This is because each variable and nested +template is implicitely already a loop; a variable or a nested template can be +added as many times as needed, and they will appear in the order they were +added. + +Template strings are compiled into templates. From a template, an instance can +be created to which the required data can be added to fill in the template. +Instantiating a template does not modify the original template, meaning +templates can be safely used concurrently. + +Each inserted variable can get its data from a variety of sources, namely +`char` buffers, files or a custom reader function. The resulting `char` stream +is never fully loaded into memory; an instance can stream its content to a +provided buffer to prevent unnecessary memory usage.