rattlepy

A easy-to-use pure python HTML template engine


License
MIT
Install
pip install rattlepy==0.0.2a1

Documentation

Rattle.py - A Pure Python HTML Template Engine for HTML

Documentation Status

Rattle.py is a pure python templating library for html. And this library has no special notation like Django or Jinja. For example:

<html>
    <head>
        <title>Hello, Rattle.py!</title>
    </head>
    <body>
        <h1 class="heading">Hello, Rattle.py!</h1>
    </body>
</html>

The above HTML equals to below Python code with rattle.py:

greeting = "Hello, Rattle.py!"
with html() as html:
  with head():
    with title():
      text(greeting)
  with body():
    with h1(className="heading"):
      text(greeting)

# show as HTML
print(html)

And then, you can also make reusable components by yourself:

def greet(name):
  with node("div", className="greet-wrapper") as component:
    with node("h1"):
      text(f"Hello, {name}=san")
    with node("button", className="ok-btn"):
      text("ok!")
  return component

# and using:
with greet("User"): pass

Enjoy!