kiss-tpl

1.0.5 • Public • Published

kiss-tpl 💋

lightweight, simple and powerful javascript template engine

verry simple template engine use ES6 - Template literals to render all type of pain text (HTML, json, email, code generater etc.)

Features

  • ✅ nodejs support.
  • ✅ browsers support.
  • ✅ well tested.
  • ✅ supper lightweight.
  • ✅ supper easy.
  • ✅ powerful.
  • ✅ have every things that a template engine need.
  • ❌ no dependentce required.
  • ❌ no extra options.
  • ❌ nothing to learn.

Install

you can install from npm by:

npm install kiss-tpl --save

or from github:

git clone https://github.com/minhlucvan/kiss-tpl.git

usage

Just like template literals, no it's template literals.

    
    import kiss from 'kiss-tpl';
 
    let context = {thing: "world" }; 
    let tpl = ctx => kiss`hello ${ctx.thing}`;
 
    console.log(tpl(context)); // hello world
 

pretty easy right!

let me show you something cool

conditional blocks

there is no if - else here but you can do this instead.

 
    let context = {isFine: true }; 
    let tpl = ctx => kiss`
        A: hello, how are you today?
        B: hi, ${ctx.isFine ? "oh, I'm fine thank you." : "oh, I feel not verry good."}.
    `;
 

es6 is amazing.

array render

of course there is no for, but you can use map

 
    let context = {frieds: ["Bob", "julia", "Ren", "Samath"] }; 
    let tpl = ctx => kiss`
        I have many friends like ${ctx.frieds.map((friend) => fried + 'y';)}
    `;
 

let put some function

you can also put a function callback like this.

 
    function plus( one, other ){
        return one + other;
    }
 
    let context = {one: 3, other: 1 }; 
    let tpl = ctx => kiss`
        ${ctx.one} + ${ctx.other} = ${plus(ctx.one, ctx.other)} 
    `;
 

thank for reading and happy coding.

license

MIT

Package Sidebar

Install

npm i kiss-tpl

Weekly Downloads

4

Version

1.0.5

License

MIT

Last publish

Collaborators

  • minhlucvan