Skip to main content

LibDOM is a Python library that abstracts all modern HTML tags, enabling you to build dynamic HTML documents programmatically. With a clean and intuitive Framework, LibDOM simplifies web development by allowing you to generate and manipulate HTML entirely in Python. Perfect for creating dynamic, maintainable, and responsive web pages.

Project description

LibDOM

LibDOM is a Python library that abstracts HTML tags, allowing you to create dynamic HTML documents in a simple and programmatic way. With LibDOM, you can generate HTML structures entirely in Python, bringing clarity and flexibility to web development.

Key Features

  • Complete Abstraction: Supports all HTML tags (non-obsolete).
  • Flexibility: Ideal for creating dynamic web pages that require frequent updates.
  • Productivity: Reduces repetitive code, simplifies maintenance, and accelerates development.

Example

from libdom.Elements import *
from libdom.Styles import *

html = Html(
    Head(
        Style({
            "body": {
                Margin: "0",
                Padding: "0",
                Display: "flex",
                JustifyContent: "center",
                AlignItems: "center"
            },
            
            ".div": {
                Border: "1px solid black",
                BackgroundColor: "red",
                "&:hover": {
                    BackgroundColor: "blue"
                }
            }
        })
    ),
    Body(
        Div(
            P("Hello World"),
            **{ Div.Attribute.Class: "div" }
        )
    )
)

print(html)

#<html>
#    <head>
#        <style>
#            body {
#                margin: 0;
#                padding: 0;
#                display: flex;
#                justify-content: center;
#                align-items: center;
#            }
#            #div {
#                border: 1px solid black;
#                background-color: red;
#                &:hover {
#                    background-color: blue;
#                }
#            }
#        </style>
#    </head>
#    <body>
#        <div class="div">
#            <p>
#                Hello World
#            </p>
#        </div>
#    </body>
#</html>

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

libdom-0.0.9.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

LibDOM-0.0.9-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file libdom-0.0.9.tar.gz.

File metadata

  • Download URL: libdom-0.0.9.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.7

File hashes

Hashes for libdom-0.0.9.tar.gz
Algorithm Hash digest
SHA256 4ce54e61f2cb911ee04a24331d30ba42b00bb414de9e84a1688bfe7e75dd1bed
MD5 25e4256c7e4fdd5f4023d4758185349e
BLAKE2b-256 a74178383ba2edf61aadfa47d0866548e7a7bf7bec112f75684e4a61bf96c604

See more details on using hashes here.

File details

Details for the file LibDOM-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: LibDOM-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 22.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.7

File hashes

Hashes for LibDOM-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 1a167cf8ea0dc430e5d8cdac2a0cbf9f75ffbfc08ca6b45692c2666cc438586f
MD5 c99c9b6b2c463724ee546da20ef267a2
BLAKE2b-256 7f56c4a8e1e21f94ea8fd9c3d7c42707920ee6a43a2fabffe7f358f77a049b2a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page