Giter Club home page Giter Club logo

reinhardt's Introduction

Reinhardt - Django templates for RingoJs

This is a JavaScript implementation of the Django Template System as described in http://www.djangoproject.com/documentation/templates/ for RingoJs.

Reinhard already implements the larger part of the Django templating system:

  • all iteration and conditional tags (if/else, loops, etc).
  • most other filters and tags.
  • autoescaping
  • customize and extend. Write your own tags and filters.
  • tons of unit tests. Our unit tests are copied straight from django.

Small example

Demonstration of a small Reinhardt template:

{% extends 'base.html' %}
{% block title %}Reinhardt's Site{% endblock %}
{% block content %}
  <ul>
  {% for user in users %}
    <li><a href="{{ user.url }}">{{ user.username }}</a></li>
  {% endfor %}
  </ul>
{% endblock %}

Documentation

Quickstart

Create a Reinhardt template environment, which loads templates from the filesystem and render a template:

var {Reinhardt} = require('reinhardt');
var templates = new Reinhardt({
  loader: '/path/to/templates/',
  debug: true
});

var template = templates.getTemplate('index.html');
var html = template.render({"hello": "world"});

// or for convinience the template environment
// an return a 200 response with the template as the
// response body
template.renderResponse({"hello": "other world"})

For easier template debugging, add the reinhardt middleware to your Stick application:

app.configure(require('reinhardt'), 'route')

Speed

There is a examples/speed.js which is farily easy to read. On my machine with the use-cases I have, reinhardt is roughly the same speed as the original Django template language.

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.