Skip to content

minhlucvan/kiss-tpl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

lightweight, simple and powerful javascript template engine

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published