Skip to main content

Create HTML documents using Pythonic syntax that mimics the real deal.

Project description

Domini

A small, simple package for generating HTML documents. The syntax aims to immitate HTML as closely as possible for legibility and easy of use.

Attributes

Attributes without a value are entered as positional arguments.
Attributes with a value are entered as keyword arguments.

To specify attributes that collide with reserved Python keywords, append an underscore and it will be removed.

Python

from domini.html import dialog

dialog('open', class_='mydialog')

HTML

<dialog open class='mydialog'>

Content

To add children to an element, you can use either the add method or the short-hand greater-than operator. The right-hand side can be either any sequence, iterator, or generator of elements or a lone element. These elements can be either other tags or plain strings.

NOTE: add does add them to the current object. > returns a new, identical element with those children added.

ul(class_='todo')> (
    li()> 'Buy a fruit basket.',
    li()> (
        'Read ', a(href='https://wikipedia.org/')> 'Wikipedia',
        ' to learn more about things you may have not otherwise cared about.',
    ),
)

Closing tags

A tag is only closed if content is provided. E.g. <p></p> as opposed to <p>. This can be an empty tuple.

section()> ()

For open tags like <br> and <hr>, you simply do br() and hr().

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

domini-0.7.0.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

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

domini-0.7.0-py3-none-any.whl (18.2 kB view details)

Uploaded Python 3

File details

Details for the file domini-0.7.0.tar.gz.

File metadata

  • Download URL: domini-0.7.0.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for domini-0.7.0.tar.gz
Algorithm Hash digest
SHA256 4b73838221d1ea6831db477a5cde3d1683e43868aae7ff6fddb863874a47613b
MD5 ead3a7c60a3e480714945f2899c80d8a
BLAKE2b-256 6355bff5c867f7d4fe6c5e67a7a96d99d1fa5d0270880b033eae00cf45ae904c

See more details on using hashes here.

File details

Details for the file domini-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: domini-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 18.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for domini-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 19dabb1108464bd1134c6809d56e1e6f63acdcaca7ca986387fb5b7e84db16f9
MD5 0833fd0039e9b260b62c41e1cbb3bdb2
BLAKE2b-256 b5efdf1832ba88e1bfd07fab2b2e2d429a6eaffbc447fa55996f7e83cfdbf71e

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