Light html generator
Project description
Abstract
Light html generator
Install
pip3 install htmlight
or
poetry add git+https://github.com/GrafLearnt/HTMLight.git
or
pip3 install git+https://github.com/GrafLearnt/HTMLight.git
Disclaimer
Despite htmlight is able to generate full html page, it is designed to generate small fragments of code like:
from htmlight import h
from flask_babel import lazy_gettext
from flask_login import current_user
TEMPLATE = h.div(h.hr(), h.span("{hello} {username}"), h.hr())
def get_html():
return TEMPLATE.format(hello=lazy_gettext("Hello"), username=current_user.name)
or
from htmlight import h
from flask_babel import lazy_gettext
from flask_login import current_user
def get_html():
return h.div(h.hr(), h.span(lazy_gettext("Hello"), " ", current_user.name), h.hr()))
Usage
Code
from htmlight import h
landing_page = h.html(
h.head(
h.title("Welcome to Our Website"),
h.link(attributes={"rel": "stylesheet", "href": "styles.css"}),
),
h.body(
h.header(
h.h1(
"Welcome to Our Website",
attributes={
"style": (
" color:"
" #333;"
" text-align:"
" center;"
" background-color:"
" #F0F0F0;"
" padding: 20px;"
)
},
),
h.p(
"Explore our amazing content", attributes={"style": "font-size: 20px; color: #555;"}
),
),
h.main(
h.h2("Featured Articles", attributes={"style": "color: #444; text-align: center;"}),
h.article(
h.h3("Article 1", attributes={"style": "color: #0072d6;"}),
h.p("This is the first article content", attributes={"style": "color: #666;"}),
),
h.article(
h.h3("Article 2", attributes={"style": "color: #00a86b;"}),
h.p("This is the second article content", attributes={"style": "color: #666;"}),
),
),
h.footer(
h.p(
"© 2023 Our Website",
attributes={
"style": (
"text-align: center;"
" background-color: #333;"
" color: #fff;"
" padding: 10px;"
" flex-shrink: 0;"
" background-color: #333;"
" position: absolute;"
" left: 0;"
" bottom: 0;"
" width: 100%;"
" overflow: hidden;"
)
},
),
),
),
attributes={
"style": "background-color: #f2f2f2; font-family: Arial, sans-serif;",
},
)
with open("landing_page.html", "w") as f:
f.write(landing_page)
Result page
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
htmlight-0.1.1.tar.gz
(14.5 kB
view hashes)
Built Distribution
htmlight-0.1.1-py3-none-any.whl
(14.8 kB
view hashes)