Metadata-Version: 2.0
Name: rattlepy
Version: 0.0.1a1
Summary: A easy-to-use pure python HTML templating libary
Home-page: https://github.com/frodo821/Rattlepy
Author: frodo821 <Twitter: @BoufrawFrodo2>
Author-email: 1234567890.sakai.jp@gmail.com
Maintainer: frodo821 <Twitter: @BoufrawFrodo2>
Maintainer-email: 1234567890.sakai.jp@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: License :: OSI Approved :: MIT License
Classifier: Development Status :: 3 - Alpha
Classifier: Topic :: Text Processing :: Markup :: HTML
Classifier: Topic :: Text Processing :: Markup :: XML

Rattle.py - A Pure Python Templating Library for HTML
=====================================================

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

.. code-block:: HTML

  <html>
      <head>
          <title>Hello, PTL!</title>
      </head>
      <body>
          <h1 class="heading">Hello, PTL!</h1>
      </body>
  </html>

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

.. code-block:: python

  greeting = "Hello, PTL!"
  with html() as html:
    with head():
      with title():
        text(greeting)
    with body():
      with node("h1", className="heading"):
        text(greeting)

  # show as HTML
  print(html)

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

.. code-block:: python

  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!


