A small small package I use to turn some objects into Bootstrap HTML
Project description
Bootstrap Builder
This is just a small lil package to make building HTML with Python hopefully a lil easier.
>>> import bootstrap_builder as bb
>>> page = bb.HTMLPage(title="Bootstrap Builder") # Make a page containing the head and body and etc
>>>
>>> # Time for navbar
>>> navbar_container = page.new_navbar()
>>> print(navbar_container) # <nav class="navbar" />
>>> navbar_container['class'].append('navbar-expand-sm') # Add 'navbar-expand-sm' to the class list
>>> print(navbar_container) # <nav class="navbar navbar-expand-sm" />
>>> with navbar_container.new_navbar_nav() as navbar:
_ = navbar.new_navbar_nav_item().new_child('a', 'Index', attrs={'href': '/index', 'class': 'nav-link'}) # You can add attrs inside new_XXX methods if you don't want to do it via __setitem__
>>> print(navbar_container) # <nav class="navbar navbar-expand-sm" ><ul class="navbar-nav"><li class="nav-item"><a href="/index" class="nav-link">Index</a></li></ul></nav>
>>>
>>> child = page.new_child('div')
>>> child['data-test'] = 'test1' # Add a new attr
>>> child['class'].append('owo') # Add a new class
>>> print(child) # <div data-test="test1" class="owo" />
>>>
>>> # Add some content to the tag
>>> child = page.new_child('div')
>>> _ = child.new_child('p', 'Nested Tag') # This is a nested tag
>>> print(child) # <div><p>Nested Tag</p></div>
>>>
>>> # We can also just add plain content
>>> child = page.new_child('div')
>>> _ = child.add_child('p', 'New Child') # Like .new_child, but doesn't create a new object, just adds it to the object
>>> print(child) # <div>New Child</div>
>>>
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for bootstrap_builder-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a88bf826830b0db46b895eb1f85523e94187cec2b92861d36ebae8854fc034d6 |
|
MD5 | cf9b35466dc031b3530b66c51c9b379c |
|
BLAKE2b-256 | 57e540566a2ce9ea794631ba30b9aab06e5fae752c1022859e2c03a726232b61 |