Skip to main content

HTML element implementations based on markyp.

Project description

Build Status Downloads Downloads Downloads

markyp-html

markyp-based HTML implementations.

Installation

The project is listed on the Python Package Index, it can be installed simply by executing pip install markyp-html.

Getting started

If you are not familiar with the basic concepts of markyp, please start by having a look at its documentation here.

The following very short example creates the most basic Hello World webpage. As you can see, all it takes is a single webpage() call and string conversion.

from markyp_html import webpage
page = webpage("Hello World!", page_title="Hello World")

# Get the actual HTML markup.
html = str(page)  # or page.markup
print(html)

Here is a slightly more sophisticated Hello World example, that contains all kinds of metadata, some CSS, and a couple of simple text elements:

from markyp_html import meta, style, webpage
from markyp_html.text import h1, p
from markyp_html.inline import strong

page = webpage(
    h1("markyp-html"),
    strong(p("Hello World!")),
    p("This page was generated using Python and markyp-html."),
    page_title="markyp-html demo page",
    head_elements=[style("h1 {color:red;}\np {color:blue;}")],
    metadata=[
        meta.author("Website Author"),
        meta.charset("UTF-8"),
        meta.description("markyp-html demo"),
        meta.keywords("markyp-html,markup,Python,HTML"),
        meta.viewport("width=device-width, initial-scale=1.0")
    ]
)

# Get the actual HTML markup.
html = str(page)  # or page.markup
print(html)

markyp-html extensions

markyp-html is built on markyp. In general, extensions follow the markyp-{domain-or-extension-name} naming convention.

Here is a list of extensions built on top of markyp-html:

If you have created an open source markyp-html extension, please let us know and we will include your project in this list.

Community guidelines

In general, please treat each other with respect and follow the below guidelines to interact with the project:

  • Questions, feedback: Open an issue with a [Question] <issue-title> title.
  • Bug reports: Open an issue with a [Bug] <issue-title> title, an adequate description of the bug, and a code snippet that reproduces the issue if possible.
  • Feature requests and ideas: Open an issue with an [Enhancement] <issue-title> title and a clear description of the enhancement proposal.

Contribution guidelines

Every form of contribution is welcome, including documentation improvements, tests, bug fixes, and feature implementations.

Please follow these guidelines to contribute to the project:

  • Make sure your changes match the documentation and coding style of the project, including PEP 484 type annotations.
  • mypy is used to type-check the codebase, submitted code should not produce typing errors. See this page for more information on mypy.
  • Small fixes can be submitted simply by creating a pull request.
  • Non-trivial changes should have an associated issue in the issue tracker that commits must reference (typically by adding #refs <issue-id> to the end of commit messages).
  • Please write tests for the changes you make (if applicable).

If you have any questions about contributing to the project, please contact the project owner.

As mentioned in the contribution guidelines, the project is type-checked using mypy, so first of all, the project must pass mypy's static code analysis.

The project is tested using pytest. The chosen test layout is that tests are outside the application code, see this page for details on what it means in practice.

If pytest is installed, the test set can be executed using the pytest test command from within the project directory.

If pytest-cov is also installed, a test coverage report can be generated by executing pytest test --cov markyp_html from the root directory of the project.

License - MIT

The library is open-sourced under the conditions of the MIT license.

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

markyp-html-0.2306.2.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

markyp_html-0.2306.2-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file markyp-html-0.2306.2.tar.gz.

File metadata

  • Download URL: markyp-html-0.2306.2.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for markyp-html-0.2306.2.tar.gz
Algorithm Hash digest
SHA256 64cc745a0edba677379ccc4567ecab5d16c2d2bdb317f00f465285231b8228ef
MD5 28b6d42d4a8c559962ec2f5afe8540eb
BLAKE2b-256 7965736ee94864550eeb914c26dc3b4d6eea12201e7d34a7c9db060dee2a124f

See more details on using hashes here.

File details

Details for the file markyp_html-0.2306.2-py3-none-any.whl.

File metadata

File hashes

Hashes for markyp_html-0.2306.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dc1f1336dd56212dcee7af3c71b4dee872681d9032f840c877ce4108568861f9
MD5 5993e8ed3339acaf784f2483a12ffc31
BLAKE2b-256 738b6ae34f00032263d524f4e71bb3810a5c431d37b029af7f0796c1200efc0a

See more details on using hashes here.

Supported by

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