{ "info": { "author": "Gabriel Hora", "author_email": "gabriel@switchpayments.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3" ], "description": "stempl\n======\n\n|travis|\n\nHTML templates with just Python.\n\nInstalling\n----------\n\nUse `pip`_ to install the package:\n\n.. code-block:: text\n\n pip install stempl\n\nExample\n-------\n\nFor more examples checkout the `tests`_ file.\n\n.. code-block:: python\n\n from flask import Flask\n from stempl import *\n\n\n app = Flask(__name__)\n\n\n def render_head():\n with Head() as t:\n t << meta(charset='utf-8')\n t << meta(name='viewport', content='width=device-width, initial-scale=1, shrink-to-fit=no')\n t << title('Hello World')\n t << link(href='https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css', rel='stylesheet')\n t << script(src='https://code.jquery.com/jquery-3.3.1.slim.min.js')\n t << script(src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js')\n t << script(src='https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js')\n\n return t()\n\n\n def render_navbar():\n with Ul(_class='navbar-nav') as u:\n u << li(a('Home', _class='nav-link', href='#'), _class='nav-item active')\n u << li(a('Features', _class='nav-link', href='#'), _class='nav-item active')\n u << li(a('Pricing', _class='nav-link', href='#'), _class='nav-item active')\n u << li(a('Disabled', _class='nav-link disabled', href='#'), _class='nav-item active')\n\n with Nav(_class='navbar navbar-expand-lg navbar-light bg-light') as n:\n n << a('Navbar', _class='navbar-brand', href='#')\n with Button(_class='navbar-toggler', type='button', data_toggle='collapse', data_target='#navbarNav') as b:\n b << span(_class='navbar-toggler-icon')\n n << b()\n n << div(u(), _class='collapse navbar-collapse', id='navbarNav')\n\n return n()\n\n\n def layout(content):\n with Html() as h:\n h << render_head()\n with Body() as b:\n b << render_navbar()\n b << div(content, _class='container', id='main')\n h << b()\n\n return doctype() + h()\n\n\n def index_template():\n with Div(id='index-page') as d:\n d << h1('Hello World')\n\n return layout(d)\n\n\n @app.route('/', methods=['GET'])\n def index():\n return index_template()\n\n\n if __name__ == '__main__':\n app.run(host='0.0.0.0', port=3000, debug=True)\n\n\n\n.. _pip: https://pip.pypa.io/en/stable/quickstart/\n.. _tests: stempl/tests.py\n.. |travis| image:: https://travis-ci.org/gabrielhora/stempl.svg?branch=master\n :target: https://travis-ci.org/gabrielhora/stempl\n :alt: Travis CI status\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.github.com/gabrielhora/stempl", "keywords": "html template", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "stempl", "package_url": "https://pypi.org/project/stempl/", "platform": "", "project_url": "https://pypi.org/project/stempl/", "project_urls": { "Homepage": "http://www.github.com/gabrielhora/stempl" }, "release_url": "https://pypi.org/project/stempl/1.0.7/", "requires_dist": null, "requires_python": "", "summary": "HTML templates with just Python", "version": "1.0.7" }, "last_serial": 3882753, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "44f914b209a4bc7d0937637b75ff94a2", "sha256": "9000f6b3db0490739df96b3260909e10870ee3932763c6731126958f20729405" }, "downloads": -1, "filename": "stempl-1.0.0.tar.gz", "has_sig": false, "md5_digest": "44f914b209a4bc7d0937637b75ff94a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3558, "upload_time": "2018-05-19T20:02:20", "url": "https://files.pythonhosted.org/packages/06/91/84c347149c0f422ba28f0f3cb6e5cd8ea98f78697bbd4003d42e530edc1a/stempl-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "5bbdc4c27348b6195ab0c26a21456d41", "sha256": "685f86f55aa93b7c56049ff6b9041573c59b01d45d7972d69370848580e1ffe3" }, "downloads": -1, "filename": "stempl-1.0.1.tar.gz", "has_sig": false, "md5_digest": "5bbdc4c27348b6195ab0c26a21456d41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3624, "upload_time": "2018-05-19T20:22:26", "url": "https://files.pythonhosted.org/packages/64/29/8fb63c95fc563313d9f03ccbc7c1191c663f3769a39c52dfcdf73428b6b8/stempl-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "c299e0f0178af73af367f9891e82519e", "sha256": "50c003d9f5518bcb14ce634c6a3684ebf4e298863ca201a8b278ef911b84dc78" }, "downloads": -1, "filename": "stempl-1.0.2.tar.gz", "has_sig": false, "md5_digest": "c299e0f0178af73af367f9891e82519e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3637, "upload_time": "2018-05-19T20:23:43", "url": "https://files.pythonhosted.org/packages/39/3a/4b1a3aabc5ccfe550f2112de9954532e7a4e2717d8df9d8b0c43d88fc65a/stempl-1.0.2.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "8e86e99c3a443d660e49dea79b44753f", "sha256": "fde7b1e41e4364ab19bbe527cb033df9316d1f576579c2c3be80e2f739246cd4" }, "downloads": -1, "filename": "stempl-1.0.5.tar.gz", "has_sig": false, "md5_digest": "8e86e99c3a443d660e49dea79b44753f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5739, "upload_time": "2018-05-20T12:23:45", "url": "https://files.pythonhosted.org/packages/32/f8/03ad227caea526e4a7d408dfabbc1db4fa6faf5dcbb8b76d12256c655bae/stempl-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "83e2616e74476640331e1f5443cdaeba", "sha256": "a24c4a420cc090d97303e15afb1b7f8c467c93744073fcbcb631f756b962c6f6" }, "downloads": -1, "filename": "stempl-1.0.6.tar.gz", "has_sig": false, "md5_digest": "83e2616e74476640331e1f5443cdaeba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5860, "upload_time": "2018-05-20T17:03:40", "url": "https://files.pythonhosted.org/packages/b8/01/4496073e5737190c9162efa99b967d010919bff77b38f69ee1eb00984ede/stempl-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "a5a8d0874e205289afef774ea74eb22a", "sha256": "f7036689d79b1cbb793e3179923c93f6f3972957ebd1ee82a7c2eb7dba7e3d32" }, "downloads": -1, "filename": "stempl-1.0.7.tar.gz", "has_sig": false, "md5_digest": "a5a8d0874e205289afef774ea74eb22a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5829, "upload_time": "2018-05-21T09:38:13", "url": "https://files.pythonhosted.org/packages/8f/c7/fce39934838328839242d1d9e0ae42a7e1289951805be7d37232bb6304af/stempl-1.0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a5a8d0874e205289afef774ea74eb22a", "sha256": "f7036689d79b1cbb793e3179923c93f6f3972957ebd1ee82a7c2eb7dba7e3d32" }, "downloads": -1, "filename": "stempl-1.0.7.tar.gz", "has_sig": false, "md5_digest": "a5a8d0874e205289afef774ea74eb22a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5829, "upload_time": "2018-05-21T09:38:13", "url": "https://files.pythonhosted.org/packages/8f/c7/fce39934838328839242d1d9e0ae42a7e1289951805be7d37232bb6304af/stempl-1.0.7.tar.gz" } ] }