Giter VIP home page Giter VIP logo

template-chooser's People

Contributors

adammark avatar ajacksified avatar braddunbar avatar garann avatar joepie91 avatar martinkadlec0 avatar pure avatar wolfgang42 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

template-chooser's Issues

Add browser support information

I believe that every creator of a template engine should give this information and this should be reflected here.

Right now I have to provide compatibility to some old IE and I don't want to start implementing my templates and realise that it does not work for old browsers.

Thank you for your site :)

KnockoutJS

Seems to have no mention of KnockoutJS.

please add JSTE (Javascript Templating Language)

Used your site to discover a few different templating engines, ended up going with JSTE, which isn't on the list.

JSTE is a serverside templating language that embeds Rhino ( java implementation of javascript ) into a JSP-like syntax.

Example code:

<% for (var i=0; i<3; i++) { %>This is printed three times<% } %>

This is the value of the variable: <%= variable %>

URL: http://jste.sourceforge.net/

Doesn't work in Opera

The transparency changing doesn't work in Opera, so the whole chooser is useless without actually seeing any results in Opera 11.62, the current stable version of Opera. There should be at least some fallback for browsers that don't do animation.

Suggest two template engine from China

Bad news is they do like to document the stuffs in Chinese,

ArtTemplate

From Tercent

Introduction(Chinese): http://cdc.tencent.com/?p=5723
Home page(Chinese): http://aui.github.io/artTemplate/
GitHub repo(Chinese Readme): https://github.com/aui/artTemplate

Some demos copied:

{{if admin}}
    <p>admin</p>
{{else if code > 0}}
    <p>master</p>
{{else}}
    <p>error!</p>
{{/if}}
{{each list as value index}}
    <li>{{index}} - {{value.user}}</li>
{{/each}}
{{include 'template_name'}}
{{time | dateFormat:'yyyy-MM-dd hh:mm:ss'}}

An image from 2012.6 on performance:

Juicer

From Taobao

Home page(Chinese): http://juicer.name/
Docs(English): http://juicer.name/docs/docs.html
Introduction(Chinese): http://ued.taobao.org/blog/2012/04/juicer-一个javascript模板引擎的实现和优化/
GitHub repo(Chinese): https://github.com/PaulGuo/Juicer/

An image from 2012.4 on performance:

Some demos:

{@each list as item}
    ${item.prop}
{@/each}
{@each list as item,index}
    {@if index===3}
        the index is 3, the value is ${item.prop}
    {@else if index === 4}
        the index is 4, the value is ${item.prop}
    {@else}
        the index is not 3, the value is ${item.prop}
    {@/if}
{@/each}
{@each i in range(5, 10)}
    ${i}; //输出 5;6;7;8;9;
{@/each}
<script id="tpl" type="text/template">
    <ul>
        {@each list as it,index}
            <li>${it.name} (index: ${index})</li>
        {@/each}
        {@each blah as it}
            <li>
                num: ${it.num} <br />
                {@if it.num==3}
                    {@each it.inner as it2}
                        ${it2.time} <br />
                    {@/each}
                {@/if}
            </li>
        {@/each}
    </ul>
</script>

Still alive?

I'd love to put together a pull request to add Teacup but looks like this project hasn't changed in months. Anyone home?

Pleas add XJade template engine

Hi,
I would be really thankful if you add XJade to the list.

It was opensourced and released only few weeks ago so it's not widely used yet.
Althought this should disqualified it, here are main reasons why you should consider make an exception this time:

  • it builds DOM structure directly
  • on chrome it's super fast, see this benchmark
  • Jade-like syntax, but better (closer to CSS/JavaScript)
  • already has sublime plugin with syntax highlighting
  • already has grunt plugin

XJade is much different from other engines, it has potential to be the one on client side and almost no one now about it for now. Please tell me what you think about it and help me with propagation. Thanks.

Add tempo.js

It would be cool to include tempo.js in your list.

Great site

Add my two template languages, dombuilder and kernel

What do I need to do to get my two languages listed.

  • DomBuilder is somewhat like Pure.js, but simpler and has been around much longer.
  • Kernel is a string based template language that makes async datasource declarative. It's like the older dust language, not the linkedin one. I had the idea for kernel years ago, long before dust was ever built. Mine is much simpler, faster, and powerful.

Consider including Transparency as one of the fastest template engines

Hi,

Thanks for the cool site and including Transparency in the comparison!

One question, though. I wonder how the template engine performance is evaluated?

Based on performance tests I've run, transparency should be easily one of the fastest engines on the client side. The server-side is a different story though, as usually string templating is usually a clear win over there.

Here's the tests I've run:

http://jsperf.com/transparency-vs-handlebars-finite-list/8
http://jsperf.com/transparency-vs-handlebars-infinite-list/7

http://jsperf.com/dom-vs-innerhtml-based-templating/366 (kind of naive test, as transparency caches aggressively)

Cheers,

Jarno

Add a "Chrome CSP Compliant" criteria

Great work on this tool, Garann.

Now that Chrome is aggressively pushing Manifest Version 2, lots of templating engines aren't usable in that context. They might be in later versions with explicit whitelisting or inside a sandbox, but these demand extra work.

So I suggest adding the "Chrome CSP Compliant" criteria, which basically means a library never uses eval, new Function() and the like. For example, underscore.js doesn't comply while Addy Osmani's fork of Mustache.js does.

More readability for criteria items

Putting this here in case I'm not the only one who thinks the criteria items are hard to read, the font choice has a very narrow letter spacing I think, and the shadows and All-caps (also from font) are not making it any better.

Thanks.

"One of the fastest" provides no way to verify

The question: "Does it need to be one of the very fastest?" provides no way to follow up and verify the claim. It would be helpful if you either directed the user to how the ranking was generated, or where we can find the rankings you used.

Please remove EJS

EJS does not provide for HTML escaping (let alone as a default), which means it is subject to the most common security hole in modern programming. It should be removed or at least strongly caveated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.