Git Product home page Git Product logo

template-engine-list's Introduction

template-engine

Awesome Template Engine


The repository contains the list of all available template engines in different programming languages. It covers 100+ open source template engine along with their repository.

Table of Contents

  • List of template engines
  • Programming Languages
  • Benchmarks

List of template engines


Programming Language # Template Engines Template engines name
C# 8 DotLiquid, Fluid, Handlebars.Net, MJML.Net, RazorLight, Scriban, Spark, Stubble
C++ 4 Inja, Jinja2Cpp, mstch, Qentem
CoffeeScript 1 DocPad
Go 12 Ace, Amber, Ego, GoRazor, Hero, Jade, Jet, Mustache.go, Pongo2, QuickTemplate, Raymond, Soy
Groovy 1 Jenkins Templating Engine(JTE)
Java 17 Blade, Closure-Templates, FreeMarker, Handlebars.java, HtmlFlow, JinJava, JMustache, JStachio, JTE, ManTL, Mustache.java, Pebble, Pug4J(Jade4J), Rocker, Thymeleaf, Trimou, Velocity
JavaScript 19 .Dom, Art-template, Carbone, Consolidate.js, doT, DustJS, ECT, EJS, Handlebars.js, Hogan.js, Lodash, Marko, MJML, Nunjucks, Mustache.js, Pug, Rivets, Swig, Twig.js, Velocity.js
Kotlin 1 Barber
Lua 2 Lua Resty Template, Lustache
PHP 15 Blade, Blade One, Dwoo, Fenom, Laravel Blade, Latte, Mustache.php, PHP Text Template, Plates, RainTPL 3, Savant, Smarty, TinyButStrong, Twig, Volt
Python 10 Chameleon, Cheetah3, Chevron, Genshi, Jinja, Jsonnet, Kajiki, Mako, Pystache, Unprompted
R 1 Whisker
Ruby 7 ERB, Haml, Hamlit, Jb, JBuilder, Mustache, Liquid
Rust 6 Handlebars-rust, Maud, Liquid-rust, Rust-Mustache, SailFish, Tera
Scala 7 Beard, Handlebars.scala, Hepek, ScalaTags, Scalate, Thera, Twirl
Swift 2 GRMustache.swift, Stencil
TypeScript 3 Eta, LiquidJS, Squirrelly

Programming Languages


C#

Click to expand
  1. DotLiquid : DotLiquid is a .Net port of the popular Liquid templating language written in Ruby.
  2. Fluid : Fluid is an open-source .NET template engine based on the Liquid template language.
  3. Handlebars.Net : Handlebars.Net is inspired from Handlebars.js and compiles Handlebars templates directly to IL bytecode. It mimics the JS library's API as closely as possible.
  4. MJML.Net : MJML.Net is a fast port of MJML 4 to .NET 6 & 7.
  5. RazorLight : RazorLight is used for building templates from Files outside of ASP.NET MVC.
  6. Scriban : Scriban is a fast, and lightweight scripting language and engine for .NET primarily developed for text templating with a compatibility mode for parsing liquid templates.
  7. Spark : Spark is a view engine for ASP.NET MVC, FubuMVC, NancyFx and Castle Project MonoRail frameworks and allows html to dominate the flow and get fit. Inspired syntax from Jade/Haml template engines.
  8. Stubble : Stubble is an implementation of the Mustache template system in C#.

C++

Click to expand
  1. Inja : Inja is a template engine for modern C++, inspired by Jinja for python.
  2. Jinja2Cpp: C++ implementation of the Jinja2 Python template engine.
  3. mstch : mstch is a complete implementation of mustache template engine in C++ and complies with specifications v1.1.3, including the lambda module.
  4. Qentem : Qentem is a self-contained lightweight library for rendering templates and works in both back-end(included in C++/C/Java projects) or the font-end(WASM).

CoffeeScript

Click to expand
  1. Docpad : DocPad is for streamlining the web development process and creating powerful websites and applications. Syntax usage

Go

Click to expand
  1. Ace : Ace is an HTML template engine inspired by Slim and Jade.
  2. Amber : Amber is an elegant templating engine for Go Programming Language It is inspired from HAML and Jade.
  3. Ego : Ego is an ERB style templating language for Go. It transpiles templates into pure Go and including them at compile time.
  4. GoRazor : GoRazor is the golang port of the Razor view engine originated from ASP.NET.
  5. Hero : Hero is a fast and powerful go template engine, which pre-compiles the html templates to go code.
  6. Jade : Jade.go is a simple and fast template engine implementing Jade/Pug template in Go.
  7. Jet : Jet is a template engine developed to be powerful, dynamic and fast.Syntax Doc
  8. Mustache.go : mustache.go is a go implementation of the mustache spec template engine and suited for website templates.
  9. Pongo2 : Pongo2 is a Django-syntax like templating-language. Documentation
  10. QuickTemplate : A fast and powerful template engine for Go inspired from Mako templates.
  11. Raymond : Raymond, is the go port for Handlebars implemented by Handlebars.js 3.0. Documentation
  12. Soy : Go implementation for Soy templates aka Google Closure Templates. Documentation

Groovy

Click to expand
  1. Jenkins Templating Engine : Jenkins Templating Engine (JTE) is a plugin enabling Jenkins pipeline templating and governance. JTE brings the Template Method Design Pattern to pipelines and remove the Jenkinsfile from individual source code repositories in favor of a centralized, tool-agnostic Pipeline Template.

Java

Click to expand
  1. Apache FreeMarker : FreeMarker is a Java template engine that can be used to generate text output (anything from HTML to auto generated source code) based on templates.
  2. Apache Velocity : Velocity is Java based template engine with documentation
  3. Blade : Blade is a simple open source web framework that helps you quickly build a web application. Blade pursuit is to simplify JavaWeb development. Documentation
  4. Closure-Templates : Closure Templates are a client and server-side templating system that helps to dynamically build reusable HTML and UI elements from Google.
  5. Handlebars.java : Handlebars.java is a Java port of the Handlebars template engine and follows Mustache template. Documentation is here.
  6. HtmlFlow : HtmlFlow is a Java DSL to write typesafe HTML in a fluent style.
  7. JinJava : Java-based template engine based on django template syntax, adapted to render jinja templates and developed by HubSpot Inc.
  8. JMustache : A Java implementation of Mustache specification template engine.
  9. JStachio : A Mustache compatible type-safe Java templating engine. Documentation
  10. JTE : JTE(Java Template Engine) is lightweight template engine for Java and Kotlin. It gives same productive and typesafe experience as writing Java/Kotlin code.
  11. ManTL : Manifold template Language(ManTL) is a lightweight & type-safe template engine integrated with the Java compiler using Manifold. These templates when compiled in the build can be directly used similar to Java classes.
  12. Mustache.java : Mustache.java is a derivative template engine of mustache.js. It has its own parser written in Java.
  13. Pebble : Pebble is inspired from Twig template engine, and it's syntax is similar to Jinja template engine. Documentation. It features template inheritance feature and easy-to-read syntax. It has a topdown parser.
  14. Pug4J : Pug4J(earlier named Jade4J) is built for Pug templates to be run in Java. It is Java implementation of the original JavaScript work.
  15. Rocker : Rocker uses an intuitive, tagless syntax with standard Java expressions for iteration, control, and values. Rocker's parser considers everything literal text except when it starts with the @ character.
  16. ThymeLeaf : Thymeleaf is a server-side Java template engine for both web and standalone environments. Documentation
  17. Trimou : Trimou(Trim Your Mustache Templates) is a Mustache spec implemented template engine. The helpers are inspired from Handlebars.js. Self defined parser

JavaScript

Click to expand
  1. .Dom : .dom tries to replicate re-usable component and virtual DOM with the smallest possible footprint(within 512 bytes), exploiting the ES6 javascript features. It is to built powerful GUIs in tight space environments, such as IoT devices.
  2. Art template : Art-template is a fast templating engine that optimizes template rendering speed by scope pre-declared technique and achieving similar to Javascript speed. Documentation
  3. Carbone : Carbone is a mustache-like template engine and is a open source document generator. Documentation
  4. Consolidate.js : This library consolidates most of the known template engines implemented in JS in a single npm package.
  5. doT : doT was created to be fastest JavaScript templating function with emphasis on performance under V8 and nodejs.
  6. DustJS : LinkedIn developed an asynchronous Javascript templating. Dust templates are compiled to JavaScript for speed of execution. old Documentation
  7. ECT : Performance focused JavaScript template engine with embedded CoffeeScript syntax.
  8. EJS : Embedded JavaScript(EJS) templates are designed to be flexible and easy-to-write, but without much abstractions. Online Playground and Syntax Documentation
  9. Handlebars : Handlebars.js is template engine, superset of Mustache template and parser generated using [Jison](https://gerhobbelt.github.io/jison/docs/. Documentation
  10. Hogan.js : Hogan.js is a compiler for the Mustache templating language. It has separate scanning, parsing and code generation phases which can be useful for pre-processing templates on the server. Documentation
  11. Lodash : Lodash is a utility library for working with arrays, numbers, objects, strings, creating composite functions, etc. Documentation
  12. Marko : Marko is HTML reimagined as a language for building dynamic and reactive user interfaces. Syntax Documentation
  13. MJML : MJML is a markup language created by Mailjet and designed to reduce the pain of coding a responsive email.
  14. Mozilla Nunjucks : Nunjucks is a templating engine, heavily inspired from Jinja2 with template inheritance & asynchronous control in javascript. Documentation
  15. Mustache.js : Mustache.js is a JavaScript implementation of the mustache templates(logic -less templates).
  16. Pug : Pug is a high-performance template engine influenced by Haml and implemented with JavaScript for Node.js and browsers. Documentation
  17. Rivets : Rivets is a lightweight data binding and template engine that specializes in building data-driven views. Documentation
  18. swig : Swig is a simple, Django/Jinja-like template engine for node.js. The original repo is not-maintainable mode now.
  19. Twig.js : Twig.js is a pure JavaScript implementation of the Twig PHP templating language. Documentation
  20. Velocity.js : Velocity.js is port of Apache velocity template engine in JavaScript using Jison library parser.

Kotlin

Click to expand
  1. Barber : Barber is a type safe Kotlin JVM library for building up localized and themed documents using Mustache templating.

Lua

Click to expand
  1. Lua Resty Template : lua-resty-template is a HTML templating engine for Lua and OpenResty. These templates are translated to Lua functions that you may be called as a binary bytecode blobs to disk that can be later utilized.
  2. Lustache : Lustache is an implementation of the mustache template system in Lua.

PHP

Click to expand
  1. Blade : The standalone version of Laravel's Blade templating engine for use outside of Laravel.
  2. Blade One : BladeOne is a standalone version of Laravel Blade Template Engine that uses a single PHP file and can be easily ported.
  3. Dwoo : Dwoo is a PHP5/PHP7 template Engine and inspired to replace Smarty. Project archived on Sep 1, 2020.
  4. Fenom : Fenom is a lightweight and fast template engine for PHP and inspired from Smarty. Syntax Documentation
  5. Laravel Blade : Blade is the simple and powerful templating engine in PHP that is included with Laravel. Syntax
  6. Latte : Latte is the safest templating system for PHP and provides top-notch protection against critical vulnerabilities. Documentation
  7. Mustache.php : A Mustache implementation in PHP.
  8. PHP Text Template : A simple template engine for text output in PHP applications.
  9. Plates : Plates is a native PHP template system that's fast and easy to use, inspired by Twig template engine. Syntax Documentation
  10. RainTPL 3 : RainTPL is an easy template engine for PHP as it loads HTML template to separate the presentation from the logic. Documentation
  11. Savant : Savant is a powerful but lightweight object-oriented template system for PHP.
  12. Smarty : Smarty is a template engine for PHP using variables, modifiers, functions and comments. Documentation
  13. TinyButStrong : TinyButSTrong is a PHP template engine that enables W3C compliant templates. Documentation
  14. Twig : Twig is a flexible, fast, and secure template language for PHP. The syntax is similar to the Django and Jinja templates which inspired the Twig runtime environment. Documentation
  15. Volt : Volt is an ultra-fast and designer-friendly templating engine written in C for PHP. Inspired from Jinja and part of Phalcon PHP Framework. Documentation

Python

Click to expand
  1. Chameleon : Chameleon is an HTML/XML template engine generation library in Python. Documentation
  2. Cheetah3 : Cheetah3 is a domain-specific python template engine for markup generation and templating which allows for full integration with existing Python code. Documentation
  3. Chevron : Chevron is fast python implementation of Mustache and aims to incorporate all specs and twice efficient as compared to Pystache.
  4. Genshi : Genshi provides a XML-based template language that is heavily inspired by Kid and focuses on generating XML/HTML markup. Documentation
  5. Jinja : Jinja is a fast, expressive, extensible templating engine. Special placeholders in the template allow writing code similar to Python syntax. Documentation
  6. Jsonnet : Jsonnet is a configuration language for app and tool developers Documentation
  7. Kajiki : Kajiki is a Python template engine whose input is XML with HTML/XML output and inspired from Genshi syntax. It mitigates slow performance of Genshi by compiling templates to Python code ensuring rendering with blazing-fast speed.
  8. Mako : Mako is a template library written in Python. Mako's syntax and API borrows from the best ideas of many others, including Django and Jinja2 templates, Cheetah, Myghty, and Genshi. Documentation
  9. Pystache : Pystache is a python implementation of Mustache based logic-less template engine.
  10. Unprompted : Unprompted is a powerful templating language written for Stable Diffusion workflows.

R

Click to expand
  1. Whisker : Whisker is a {{Mustache}} implementation in R confirming to its specification.

Ruby

Click to expand
  1. ERB : ERB is a easy and powerful templating engine for Ruby. Using ERB, actual Ruby code can be added to document for generating/controlling flow of document.
  2. Haml : Haml is a templating engine for HTML and designed for both easier and elegant HTML document. Documentation
  3. Hamlit : Hamlit is a high performance Haml implementation in ruby.
  4. Jb : Jb is a simpler and faster Jbuilder alternative.
  5. JBuilder : Jbuilder is a simple DSL for declaring JSON structures beating defining giant hash structures in ruby.
  6. Liquid : Liquid is a template engine in Ruby which is non evaluating and secure. It is stateless by making compile and render steps separate so that the expensive parsing and compiling is done once and rendered with different objects each time. Documentation
  7. Mustache : Mustache is a framework-agnostic way to render logic-free views in Ruby inspired from ctemplate.

Rust

Click to expand
  1. Handlebars-rust : Handlebars-rust is a port of Handlebars in rust.
  2. Liquid Rust : Liquid-rust is a port for Liquid templating engine in Rust.
  3. Maud : Maud is an HTML template engine for Rust and implemented as Rust macro. Documentation
  4. Rust-Mustache : Rust Mustache is a rust implementation of Mustache specification and inspired from ctemplate.
  5. SailFish : SailFish is a simple and intuitive syntax inspired by EJS with built-in filters and fast performance.
  6. Tera : Tera is a template engine inspired from Jinja2 and the Django template language.

Scala

Click to expand
  1. Beard : Beard is a logic-less templating engine written in Scala and inspired by Mustache. It uses ANTLR for parsing however the project is now archived.
  2. Handlebars.scala : A scala implementation of Handlebars, an extension Mustache template engine.
  3. Hepek : Hepek is written Scala code for generating typesafe but flexible HTML.
  4. ScalaTags : ScalaTags is a small and fast XML/HTML/CSS construction library for Scala that takes fragments in plain Scala code. Documentation
  5. Scalate : Scalate is a scala template engine which supports HAML, Mustache and JSP, ERB and Apache Velocity style syntax. Documentation for templates Jade, Mustache, Scaml, SSp and Scuery.
  6. Thera : Thera is a scala based template engine for building static websites.
  7. Twirl : Twirl is a Scala-based template engine, whose design was inspired by ASP.NET Razor. Documentation for Twirl and inherently supported in Play framework.

Swift

Click to expand
  1. GRMustache.swift : GRMustache extends the Mustache language with built-in functions and extensibility hooks that let you avoid the strict minimalism of Mustache when you need it.
  2. Stencil : Stencil is a simple template language in swift. It provides a syntax similar to Django and Mustache. Documentation

TypeScript

Click to expand
  1. Eta : Eta is a lightweight and fast templating engine that works inside Node, Deno, and written in TypeScript with small bundle size. Documentation
  2. LiquidJS : LiquidJS is a port of Shopify Liquid template engine in TypeScript compatible to Github Pages. Documentation
  3. Sqirrelly : Squirrelly is a modern fast template engine implemented in TypeScript. The full version weighs only ~4KB gzipped and has power similar to Nunjucks with simplicity of EJS.

Benchmarks


The benchmarks.md file contains template-engine benchmarks in popular programming languages.

template-engine-list's People

Contributors

sshailabh avatar

Stargazers

 avatar  avatar Surgan Jandial avatar Harris Siddiqui avatar Tanushree avatar Shambhavi Pardhi avatar ROHIT KUMAR avatar  avatar Durgesh Agrawal avatar Tarandeep Singh avatar  avatar Sachin Anand avatar Soorykant Suman avatar Raja Babu avatar  avatar Ritesh Birthal avatar Sajit Gupta avatar Hariom avatar  avatar Pushkal Shukla avatar

Watchers

 avatar

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.