snakeskin

Awesome JavaScript template engine.

Snakeskin

This is Frank, a snake-cowboy who loves templates.


Snakeskin is an awesome JavaScript template engine with the best support for inheritance.

Demo

Documentation

FAQ

  • 2 types of syntax: classic and Jade-Like;
  • Object-oriented approach with very rich features for code-reuse (inheritance, composition, mixing, etc.);
  • JS-like set of directives;
  • BEM (as in Stylus);
  • Localization;
  • Macros and filters;
  • Modules;
  • High-speed compilation;
  • Work in browsers, as well as on a server (node.js);
  • The engine is written in pure JavaScript and doesn't have any dependencies;
  • The source code is designed to work with Google Closure Compiler in advanced mode;
  • Good code coverage;
  • Detailed documentation with examples.
- template page(youAreUsingSnakeskin)
    - doctype
    < html lang = en
        < head
            < title :: Snakeskin
            #< script
                if (foo) bar(1 + 5)
 
        < body
            < h1 :: Snakeskin — the best template engine
            < #container.b-info
                - if youAreUsingSnakeskin
                    < p.&__good :: Congratulations, you are using the best!
 
                - else
                    < p.&__bad :: Get on it!
 
                < p.&__description
                    Snakeskin — a client-server template engine with
                    simple and straightforward syntax and a rich set of features.
page(true);

It will transpiled to

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Snakeskin</title>
        <script type="text/javascript">
            if (foo) bar(1 + 5)
        </script> 
    </head>
    <body>
        <h1>Snakeskin — the best template engine</h1>
        <div id="container" class="b-info">
            <p class="b-info__good">Congratulations, you are using the best!</p>
            <p class="b-info__description">Snakeskin — a client-server template engine with
                simple and straightforward syntax and a rich set of features.</p>
        </div>
    </body>
</html>

License

The MIT License.