Skip to content

hasansezertasan/awesome-python-html

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

awesome-python-html

🏆  A ranked list of awesome projects. Updated weekly.

This curated list contains 68 awesome open-source projects with a total of 10K stars grouped into 4 categories. All projects are ranked by a project-quality score, which is calculated based on various metrics automatically collected from GitHub and different package managers. If you like to add or update projects, feel free to open an issue, submit a pull request, or directly edit the projects.yaml. Contributions are very welcome!

🧙‍♂️ Discover other best-of lists or create your own.

Motivation

This section is written assuming you "use HTML for web development."

Why use Python to generate HTML...

  • You lose type hints, editor support, auto-completion, and all the good stuff in Python when you use template engines.
  • You create more files (HTML templates) and have to manage them. (You also might have to deal with the file system to manage overrides and such.)
  • It's pythonic, a familiar syntax, and you can use all the Python features.

Contents

Explanation

  • 🥇🥈🥉  Combined project-quality score
  • ⭐️  Star count from GitHub
  • 🐣  New project (less than 6 months old)
  • 💤  Inactive project (6 months no activity)
  • 💀  Dead project (12 months no activity)
  • 📈📉  Project is trending up or down
  • ➕  Project was recently added
  • ❗️  Warning (e.g. missing/risky license)
  • 👨‍💻  Contributors count from GitHub
  • 🔀  Fork count from GitHub
  • 📋  Issue count from GitHub
  • ⏱️  Last update timestamp on package manager
  • 📥  Download count from package manager
  • 📦  Number of dependent projects

Miscellaneous

Back to top

If you can think of a more appropriate category for the items below, PRs welcome!


HTML Generation

Back to top

Projects for generating HTML

dominate (🥇23 · ⭐ 1.8K · 💤) - Dominate is a Python library for creating and manipulating HTML documents..

1 projects are hidden because they don't fulfill the minimal requirements.


domonic (🥇14 · ⭐ 140 · 💤) - Create HTML with python 3 using a standard DOM API. Includes a python port..

1 projects are hidden because they don't fulfill the minimal requirements.


lxml (🥇33 · ⭐ 2.9K · ➕) - The lxml XML toolkit for Python. BSD-3
  • GitHub (👨‍💻 170 · 🔀 580 · 📥 17K · 📦 590K · ⏱️ 24.09.2025):

     git clone https://github.com/lxml/lxml
    
ludic (🥇17 · ⭐ 860 · ➕) - A type-safe HTML template engine for Python. Build dynamic web pages.. MIT
  • GitHub (👨‍💻 8 · 🔀 18 · 📥 390 · 📦 14 · 📋 29 - 58% open · ⏱️ 23.08.2025):

     git clone https://github.com/paveldedik/ludic
    
enaml-web (🥇14 · ⭐ 100 · ➕) - Build interactive websites with enaml. MIT
  • GitHub (👨‍💻 6 · 🔀 18 · 📦 14 · 📋 33 - 21% open · ⏱️ 19.03.2025):

     git clone https://github.com/codelv/enaml-web
    
htbuilder (🥇14 · ⭐ 100 · 💤) - A purely-functional HTML builder for Python. Think JSX rather.. Apache-2
  • GitHub (👨‍💻 4 · 🔀 12 · 📦 5.1K · 📋 3 - 66% open · ⏱️ 09.01.2025):

     git clone https://github.com/tvst/htbuilder
    
pyxl (🥈12 · ⭐ 550 · 💤) - A Python extension for writing structured and reusable inline HTML. Apache-2
  • GitHub (👨‍💻 48 · 🔀 34 · ⏱️ 14.01.2025):

     git clone https://github.com/dropbox/pyxl
    
Show 52 hidden projects...
  • markyp (🥈11 · ⭐ 39 · ➕) - Python 3 tools for creating markup documents.
  • TemPy (🥇16 · ⭐ 140 · 💀) - Python Object Oriented Html Templating System. Apache-2
  • yattag (🥇15 · ⭐ 350 · 💤) - Python library to generate HTML or XML in a readable, concise.. ❗Unlicensed
  • MarkupPy (🥇14 · ⭐ 11 · ➕) - MarkupPy - An HTML/XML generator. MIT
  • sierra (🥈13 · ⭐ 90 · ➕) - A Pythonic wraparound of HTML/CSS/JS. Apache-2
  • html5tagger (🥈13 · ⭐ 32 · 💀) - Create HTML documents from Python. Unlicense
  • auditorium (🥈12 · ⭐ 83 · 💀) - An HTML+CSS+JS generator from pure Python code. ❗Unlicensed
  • simple_html (🥈11 · ⭐ 50 · ➕) - fast, templateless html generation. MIT
  • htmlgenerator (🥈11 · ⭐ 41 · 💤) - TL;DR DOM on the server-side. BSD-3
  • pyxl4 (🥈10 · ⭐ 89 · 💀) - Extend Python syntax with HTML. Apache-2
  • wdom (🥈10 · ⭐ 75 · 💀) - Web technology based GUI library for desktop applications. MIT
  • htmlBuilder (🥈10 · ⭐ 39 · 💀) - A beautiful html builder built with python. MIT
  • jinjax-ui (🥈10 · ⭐ 20 · ➕) - JinjaX UI components. MIT
  • python-htmlgen (🥈10 · ⭐ 17 · 💀) - Python HTML 5 Generator. MIT
  • hyperscript (🥈10 · ⭐ 10 · 💤) - HyperText with Python. MIT
  • pyhtml (🥈9 · ⭐ 75 · 💀) - HTML generation library for Python. ❗Unlicensed
  • htmltree (🥈9 · ⭐ 36 · 💀) - Generalized nested html element tree with recursive rendering. MIT
  • htmltag (🥈9 · ⭐ 22 · 💀) - A Python (2 and 3) module for wrapping whatever strings you want.. Apache-2
  • INUI (🥈9 · ⭐ 21 · ➕) - Powerful and Highly Customizable Python Library for UI. MIT
  • domify (🥈9 · ⭐ 7 · ➕) - HTML generator using pure Python. MIT
  • pyhead (🥈9 · ⭐ 1 · ➕) - The Python HTML head filler. MIT
  • fast_html (🥉8 · ⭐ 80 · ➕) - Generate HTML conveniently and efficiently in Python. ❗️LGPL-3.0
  • hyperpython (🥉7 · ⭐ 58 · 💀) - A small DSL to write HTML in Python. ❗Unlicensed
  • thedom (🥉7 · ⭐ 24 · 💀) - A python framework to generate html and JavaScript from reusable.. ❗️GPL-2.0
  • Rattlepy (🥉7 · ⭐ 9 · 💀) - A easy-to-use pure python HTML template engine. MIT
  • QuykHtml (🥉6 · ⭐ 19 · ➕) - A python library that allows you to quickly and easily generate HTML.. MIT
  • pyplater (🥉6 · ⭐ 12 · 💀) - Build html component with python. MIT
  • tagz (🥉6 · ⭐ 6 · 💀) - tagz is a html tags builder. MIT
  • liku (🥉6 · ⭐ 5 · 💤) - Python HTML templating, inspired by modern Web Development. MIT
  • uidom (🥉6 · ⭐ 3 · 💤) - Blade like HTML Library for Python. MIT
  • lys (🥉5 · ⭐ 77 · 💀) - Simple HTML templating for Python. ❗Unlicensed
  • html5ever-python (🥉5 · ⭐ 41 · 💀) - Python bindings for html5ever, using CFFI. ❗Unlicensed
  • cottonmouth (🥉5 · ⭐ 15 · 💀) - Pure-Python HTML generation. BSD-3
  • flask-htmlbuilder (🥉5 · ⭐ 11 · 💀) - Builds HTML from Python (recovered from local.. BSD-3
  • html_generators (🥉5 · ⭐ 9 · 💀) - Functional, streaming HTML generation. MIT
  • phlex (🥉5 · 💀) - Simple, flexible static HTML builder written in Python. MIT
  • htmxido (🥉4 · ⭐ 21 · 💀) - HTMX generation in Python 3 using DSL. MIT
  • python-tinyhtml (🥉4 · ⭐ 19 · 💤) - A tiny library to safely render compact HTML5 from.. Apache-2
  • PyHTMLWriter (🥉4 · ⭐ 5 · 💀) - HTML Writer in Python. ❗Unlicensed
  • pytagtree (🥉4 · ⭐ 1 · 💀) - Create markup tag trees using python code with component like structure. MIT
  • htmgem (🥉3 · ⭐ 4 · 💀) - Generate HTML with Python. ❗Unlicensed
  • Anikeshpatel/dompy (🥉3 · ⭐ 3 · 💀) - JavaScript Dom Api for Python, Html Parser and a Web.. ❗️GPL-3.0
  • SliqueHTML (🥉3 · ⭐ 2 · 💀) - Python library that lets you create HTML using DOM-like objects. MIT
  • hype-html (🥉3 · ⭐ 2 · 💀) - A minimal python dsl for generating html. MIT
  • markpy (🥉3 · ⭐ 1 · 💀) - Embedding tree markup syntax (XML) into Python. MIT
  • pyHTML5builder (🥉3 · 💀) - MIT
  • doctorOb/dompy (🥉3 · 💀) - Javascript DOM objects in python. Parse html like you would in.. ❗Unlicensed
  • PythonBoostrapWebBuilder (🥉3 · 💀) - Helper class to generate simple html pages using.. ❗️GPL-3.0
  • Python-HTML-Parser (🥉3 · 💀) - Simple HTML DOM Parser written in python. ❗Unlicensed
  • bootstrap_wrapper (🥉3 · 💀) - A work in progress, a python library(almost) that uses.. ❗Unlicensed
  • pdoo (🥉2 · ⭐ 1 · 💀) - PDOO (Python DOM Orchestrator) is a library for generating styled HTML.. MIT
  • JS-templater-python (🥉1 · ⭐ 2 · 💀) - Flask Library/Tool to use pure DOM javascript render.. ❗Unlicensed

HTML Form Generation

Back to top

Projects for generating HTML forms

wtforms (🥇28 · ⭐ 1.6K · ➕) - A flexible forms validation and rendering library for Python. BSD-3
  • GitHub (👨‍💻 170 · 🔀 400 · 📥 37 · 📦 260K · 📋 470 - 13% open · ⏱️ 22.08.2025):

     git clone https://github.com/pallets-eco/wtforms
    
Show 3 hidden projects...
  • deform (🥈20 · ⭐ 420 · ➕) - A Python HTML form library. ❗Unlicensed
  • reforms (🥉5 · ⭐ 25 · 💀) - Reforms is a fresh pydantic-based forms validation and rendering library.. MIT
  • blitz-forms (🥉4 · 💀) - python library to programmatically generate html forms. MIT

Related Projects

Back to top

Projects for related to HTML generation

fastui (🥇25 · ⭐ 8.9K · ➕) - Build better UIs faster.

1 projects are hidden because they don't fulfill the minimal requirements.


Show 3 hidden projects...
  • awesome-python-htmx (🥈11 · ⭐ 1.3K · 💀) - A curated list of things related to python-based web.. MIT
  • liveviews (🥈7 · ⭐ 490 · 💤) - Phoenix LiveView workalikes for different languages and.. ❗Unlicensed
  • pure-python-web-development (🥉6 · ⭐ 100 · 💀) - Avoid the CSS/JS/HTML soup - develop web apps.. ❗Unlicensed

Others

Back to top

🔗 Why Kotlin Is The Best Language (to use with htmx) - YouTube


Related Resources

  • Best-of lists: Discover other best-of lists with awesome open-source projects on all kinds of topics.

Contribution

Contributions are encouraged and always welcome! If you like to add or update projects, choose one of the following ways:

  • Open an issue by selecting one of the provided categories from the issue page and fill in the requested information.
  • Modify the projects.yaml with your additions or changes, and submit a pull request. This can also be done directly via the Github UI.

If you like to contribute to or share suggestions regarding the project metadata collection or markdown generation, please refer to the best-of-generator repository. If you like to create your own best-of list, we recommend to follow this guide.

For more information on how to add or update projects, please read the contribution guidelines. By participating in this project, you agree to abide by its Code of Conduct.

License

CC0

About

A curated list of things related to python-based HTML generation.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published