Skip to content

Commit 447fc29

Browse files
Update best-of list for version 2025.10.09 (#17)
Co-authored-by: hasansezertasan <13135006+hasansezertasan@users.noreply.github.com>
1 parent 2312446 commit 447fc29

4 files changed

Lines changed: 166 additions & 104 deletions

File tree

README.md

Lines changed: 40 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010

1111
<p align="center">
1212
<a href="https://best-of.org" title="Best-of Badge"><img src="http://bit.ly/3o3EHNN"></a>
13-
<a href="#Contents" title="Project Count"><img src="https://img.shields.io/badge/projects-68-blue.svg?color=5ac4bf"></a>
13+
<a href="#Contents" title="Project Count"><img src="https://img.shields.io/badge/projects-71-blue.svg?color=5ac4bf"></a>
1414
<a href="#Contribution" title="Contributions are welcome"><img src="https://img.shields.io/badge/contributions-welcome-green.svg"></a>
1515
<a href="https://github.com/hasansezertasan/awesome-python-html/releases" title="Best-of Updates"><img src="https://img.shields.io/github/release-date/hasansezertasan/awesome-python-html?color=green&label=updated"></a>
1616
</p>
1717

18-
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](https://github.com/hasansezertasan/awesome-python-html/issues/new/choose), submit a [pull request](https://github.com/hasansezertasan/awesome-python-html/pulls), or directly edit the [projects.yaml](https://github.com/hasansezertasan/awesome-python-html/edit/main/projects.yaml). Contributions are very welcome!
18+
This curated list contains 71 awesome open-source projects with a total of 11K 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](https://github.com/hasansezertasan/awesome-python-html/issues/new/choose), submit a [pull request](https://github.com/hasansezertasan/awesome-python-html/pulls), or directly edit the [projects.yaml](https://github.com/hasansezertasan/awesome-python-html/edit/main/projects.yaml). Contributions are very welcome!
1919

2020
> 🧙‍♂️ Discover other [best-of lists](https://best-of.org) or [create your own](https://github.com/best-of-lists/best-of/blob/main/create-best-of-list.md).
2121
@@ -32,7 +32,7 @@ Why use Python to generate HTML...
3232
## Contents
3333

3434
- [Miscellaneous](#miscellaneous) _0 projects_
35-
- [HTML Generation](#html-generation) _59 projects_
35+
- [HTML Generation](#html-generation) _62 projects_
3636
- [HTML Form Generation](#html-form-generation) _4 projects_
3737
- [Related Projects](#related-projects) _4 projects_
3838
- [Others](#others) _1 projects_
@@ -91,33 +91,41 @@ _Projects for generating HTML_
9191

9292
---
9393
</details>
94-
<details><summary><b><a href="https://github.com/lxml/lxml">lxml</a></b> (🥇33 · ⭐ 2.9K · ➕) - The lxml XML toolkit for Python. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code></summary>
94+
<details><summary><b><a href="https://github.com/lxml/lxml">lxml</a></b> (🥇33 · ⭐ 2.9K) - The lxml XML toolkit for Python. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code></summary>
9595

96-
- [GitHub](https://github.com/lxml/lxml) (👨‍💻 170 · 🔀 580 · 📥 17K · 📦 590K · ⏱️ 24.09.2025):
96+
- [GitHub](https://github.com/lxml/lxml) (👨‍💻 170 · 🔀 580 · 📥 9.5K · 📦 590K · ⏱️ 24.09.2025):
9797

9898
```
9999
git clone https://github.com/lxml/lxml
100100
```
101101
</details>
102-
<details><summary><b><a href="https://github.com/getludic/ludic">ludic</a></b> (🥇17 · ⭐ 860 · ➕) - A type-safe HTML template engine for Python. Build dynamic web pages.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
102+
<details><summary><b><a href="https://github.com/pelme/htpy">htpy</a></b> (🥇19 · ⭐ 390 · ➕) - Generate HTML in Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
103103

104-
- [GitHub](https://github.com/getludic/ludic) (👨‍💻 8 · 🔀 18 · 📥 390 · 📦 14 · 📋 29 - 58% open · ⏱️ 23.08.2025):
104+
- [GitHub](https://github.com/pelme/htpy) (👨‍💻 17 · 🔀 26 · 📦 57 · 📋 39 - 15% open · ⏱️ 28.08.2025):
105+
106+
```
107+
git clone https://github.com/pelme/htpy
108+
```
109+
</details>
110+
<details><summary><b><a href="https://github.com/getludic/ludic">ludic</a></b> (🥇15 · ⭐ 860 · 📉) - A type-safe HTML template engine for Python. Build dynamic web pages.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
111+
112+
- [GitHub](https://github.com/getludic/ludic) (👨‍💻 8 · 🔀 18 · 📥 390 · 📦 15 · 📋 29 - 58% open · ⏱️ 23.08.2025):
105113

106114
```
107115
git clone https://github.com/paveldedik/ludic
108116
```
109117
</details>
110-
<details><summary><b><a href="https://github.com/codelv/enaml-web">enaml-web</a></b> (🥇14 · ⭐ 100 · ) - Build interactive websites with enaml. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
118+
<details><summary><b><a href="https://github.com/codelv/enaml-web">enaml-web</a></b> (🥇14 · ⭐ 100 · 💤) - Build interactive websites with enaml. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
111119

112-
- [GitHub](https://github.com/codelv/enaml-web) (👨‍💻 6 · 🔀 18 · 📦 14 · 📋 33 - 21% open · ⏱️ 19.03.2025):
120+
- [GitHub](https://github.com/codelv/enaml-web) (👨‍💻 6 · 🔀 17 · 📦 14 · 📋 33 - 21% open · ⏱️ 19.03.2025):
113121

114122
```
115123
git clone https://github.com/codelv/enaml-web
116124
```
117125
</details>
118126
<details><summary><b><a href="https://github.com/tvst/htbuilder">htbuilder</a></b> (🥇14 · ⭐ 100 · 💤) - A purely-functional HTML builder for Python. Think JSX rather.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code></summary>
119127

120-
- [GitHub](https://github.com/tvst/htbuilder) (👨‍💻 4 · 🔀 12 · 📦 5.1K · 📋 3 - 66% open · ⏱️ 09.01.2025):
128+
- [GitHub](https://github.com/tvst/htbuilder) (👨‍💻 4 · 🔀 13 · 📦 5.2K · 📋 3 - 66% open · ⏱️ 09.01.2025):
121129

122130
```
123131
git clone https://github.com/tvst/htbuilder
@@ -131,43 +139,45 @@ _Projects for generating HTML_
131139
git clone https://github.com/dropbox/pyxl
132140
```
133141
</details>
134-
<details><summary>Show 52 hidden projects...</summary>
142+
<details><summary>Show 54 hidden projects...</summary>
135143

136-
- <b><a href="https://github.com/volfpeter/markyp">markyp</a></b> (🥈11 · ⭐ 39 · ➕) - Python 3 tools for creating markup documents.
144+
- <b><a href="https://github.com/volfpeter/markyp">markyp</a></b> (🥈11 · ⭐ 39) - Python 3 tools for creating markup documents.
137145
- <b><a href="https://github.com/Hrabal/TemPy">TemPy</a></b> (🥇16 · ⭐ 140 · 💀) - Python Object Oriented Html Templating System. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
138146
- <b><a href="https://github.com/leforestier/yattag">yattag</a></b> (🥇15 · ⭐ 350 · 💤) - Python library to generate HTML or XML in a readable, concise.. <code>❗Unlicensed</code>
139-
- <b><a href="https://github.com/tylerbakke/MarkupPy">MarkupPy</a></b> (🥇14 · ⭐ 11 · ) - MarkupPy - An HTML/XML generator. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
140-
- <b><a href="https://github.com/BrainStormYourWayIn/sierra">sierra</a></b> (🥈13 · ⭐ 90 · ➕) - A Pythonic wraparound of HTML/CSS/JS. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
147+
- <b><a href="https://github.com/tylerbakke/MarkupPy">MarkupPy</a></b> (🥇14 · ⭐ 11 · 💤) - MarkupPy - An HTML/XML generator. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
148+
- <b><a href="https://github.com/BrainStormYourWayIn/sierra">sierra</a></b> (🥈13 · ⭐ 90) - A Pythonic wraparound of HTML/CSS/JS. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
141149
- <b><a href="https://github.com/sanic-org/html5tagger">html5tagger</a></b> (🥈13 · ⭐ 32 · 💀) - Create HTML documents from Python. <code><a href="http://bit.ly/3rvuUlR">Unlicense</a></code>
142150
- <b><a href="https://github.com/apiad/auditorium">auditorium</a></b> (🥈12 · ⭐ 83 · 💀) - An HTML+CSS+JS generator from pure Python code. <code>❗Unlicensed</code>
143-
- <b><a href="https://github.com/keithasaurus/simple_html">simple_html</a></b> (🥈11 · ⭐ 50 · ➕) - fast, templateless html generation. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
144151
- <b><a href="https://github.com/basxsoftwareassociation/htmlgenerator">htmlgenerator</a></b> (🥈11 · ⭐ 41 · 💤) - TL;DR DOM on the server-side. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code>
145152
- <b><a href="https://github.com/pyxl4/pyxl4">pyxl4</a></b> (🥈10 · ⭐ 89 · 💀) - Extend Python syntax with HTML. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
146153
- <b><a href="https://github.com/miyakogi/wdom">wdom</a></b> (🥈10 · ⭐ 75 · 💀) - Web technology based GUI library for desktop applications. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
154+
- <b><a href="https://github.com/keithasaurus/simple_html">simple_html</a></b> (🥈10 · ⭐ 50 · 📉) - fast, templateless html generation. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
147155
- <b><a href="https://github.com/jaimevp54/htmlBuilder">htmlBuilder</a></b> (🥈10 · ⭐ 39 · 💀) - A beautiful html builder built with python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
148-
- <b><a href="https://github.com/jpsca/jinjax-ui">jinjax-ui</a></b> (🥈10 · ⭐ 20 · ➕) - JinjaX UI components. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
149-
- <b><a href="https://github.com/srittau/python-htmlgen">python-htmlgen</a></b> (🥈10 · ⭐ 17 · 💀) - Python HTML 5 Generator. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
156+
- <b><a href="https://github.com/jpsca/jinjax-ui">jinjax-ui</a></b> (🥈10 · ⭐ 20) - JinjaX UI components. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
150157
- <b><a href="https://github.com/vchan/hyperscript">hyperscript</a></b> (🥈10 · ⭐ 10 · 💤) - HyperText with Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
151-
- <b><a href="https://github.com/cenkalti/pyhtml">pyhtml</a></b> (🥈9 · ⭐ 75 · 💀) - HTML generation library for Python. <code>❗Unlicensed</code>
158+
- <b><a href="https://github.com/Parnassius/domify">domify</a></b> (🥈10 · ⭐ 7 · 📈) - HTML generator using pure Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
159+
- <b><a href="https://github.com/CheeseCake87/pyhead">pyhead</a></b> (🥈10 · ⭐ 4 · 📈) - The Python HTML head filler. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
160+
- <b><a href="https://github.com/koaning/mohtml">mohtml</a></b> (🥈9 · ⭐ 53 · ➕) - DSL for HTML that targets marimo and more!. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
152161
- <b><a href="https://github.com/Michael-F-Ellis/htmltree">htmltree</a></b> (🥈9 · ⭐ 36 · 💀) - Generalized nested html element tree with recursive rendering. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
153162
- <b><a href="https://github.com/LiftoffSoftware/htmltag">htmltag</a></b> (🥈9 · ⭐ 22 · 💀) - A Python (2 *and* 3) module for wrapping whatever strings you want.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
154-
- <b><a href="https://github.com/MohammadrezaAmani/INUI">INUI</a></b> (🥈9 · ⭐ 21 · ) - Powerful and Highly Customizable Python Library for UI. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
155-
- <b><a href="https://github.com/Parnassius/domify">domify</a></b> (🥈9 · ⭐ 7 · ) - HTML generator using pure Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
156-
- <b><a href="https://github.com/CheeseCake87/pyhead">pyhead</a></b> (🥈9 · ⭐ 1 · ➕) - The Python HTML head filler. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
157-
- <b><a href="https://github.com/pcarbonn/fast_html">fast_html</a></b> (🥉8 · ⭐ 80 · ) - Generate HTML conveniently and efficiently in Python. <code><a href="http://bit.ly/37RvQcA">❗️LGPL-3.0</a></code>
158-
- <b><a href="https://github.com/ejplatform/hyperpython">hyperpython</a></b> (🥉7 · ⭐ 58 · 💀) - A small DSL to write HTML in Python. <code>❗Unlicensed</code>
163+
- <b><a href="https://github.com/MohammadrezaAmani/INUI">INUI</a></b> (🥈9 · ⭐ 21 · 💤) - Powerful and Highly Customizable Python Library for UI. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
164+
- <b><a href="https://github.com/srittau/python-htmlgen">python-htmlgen</a></b> (🥈9 · ⭐ 17 · 💀) - Python HTML 5 Generator. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
165+
- <b><a href="https://github.com/pcarbonn/fast_html">fast_html</a></b> (🥉8 · ⭐ 100) - Generate HTML conveniently and efficiently in Python. <code><a href="http://bit.ly/37RvQcA">❗️LGPL-3.0</a></code>
166+
- <b><a href="https://github.com/cenkalti/pyhtml">pyhtml</a></b> (🥉8 · ⭐ 75 · 💀) - HTML generation library for Python. <code>❗Unlicensed</code>
167+
- <b><a href="https://github.com/ejplatform/hyperpython">hyperpython</a></b> (🥉7 · ⭐ 59 · 💀) - A small DSL to write HTML in Python. <code>❗Unlicensed</code>
159168
- <b><a href="https://github.com/timothycrosley/thedom">thedom</a></b> (🥉7 · ⭐ 24 · 💀) - A python framework to generate html and JavaScript from reusable.. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code>
160169
- <b><a href="https://github.com/frodo821/Rattlepy">Rattlepy</a></b> (🥉7 · ⭐ 9 · 💀) - A easy-to-use pure python HTML template engine. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
161-
- <b><a href="https://github.com/mwd1993/QuykHtml">QuykHtml</a></b> (🥉6 · ⭐ 19 · ➕) - A python library that allows you to quickly and easily generate HTML.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
170+
- <b><a href="https://github.com/mwd1993/QuykHtml">QuykHtml</a></b> (🥉6 · ⭐ 19) - A python library that allows you to quickly and easily generate HTML.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
162171
- <b><a href="https://github.com/Unviray/pyplater">pyplater</a></b> (🥉6 · ⭐ 12 · 💀) - Build html component with python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
172+
- <b><a href="https://github.com/quokkaproject/flask-htmlbuilder">flask-htmlbuilder</a></b> (🥉6 · ⭐ 11 · 💀) - Builds HTML from Python (recovered from local.. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code>
163173
- <b><a href="https://github.com/mosquito/tagz">tagz</a></b> (🥉6 · ⭐ 6 · 💀) - tagz is a html tags builder. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
164-
- <b><a href="https://github.com/rorre/liku">liku</a></b> (🥉6 · ⭐ 5 · 💤) - Python HTML templating, inspired by modern Web Development. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
174+
- <b><a href="https://github.com/rorre/liku">liku</a></b> (🥉6 · ⭐ 5 · 💀) - Python HTML templating, inspired by modern Web Development. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
165175
- <b><a href="https://github.com/bitplorer/uidom">uidom</a></b> (🥉6 · ⭐ 3 · 💤) - Blade like HTML Library for Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
166176
- <b><a href="https://github.com/mdamien/lys">lys</a></b> (🥉5 · ⭐ 77 · 💀) - Simple HTML templating for Python. <code>❗Unlicensed</code>
167177
- <b><a href="https://github.com/SimonSapin/html5ever-python">html5ever-python</a></b> (🥉5 · ⭐ 41 · 💀) - Python bindings for html5ever, using CFFI. <code>❗Unlicensed</code>
168178
- <b><a href="https://github.com/nosamanuel/cottonmouth">cottonmouth</a></b> (🥉5 · ⭐ 15 · 💀) - Pure-Python HTML generation. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code>
169-
- <b><a href="https://github.com/quokkaproject/flask-htmlbuilder">flask-htmlbuilder</a></b> (🥉5 · ⭐ 11 · 💀) - Builds HTML from Python (recovered from local.. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code>
170179
- <b><a href="https://github.com/quadrant-newmedia/html_generators">html_generators</a></b> (🥉5 · ⭐ 9 · 💀) - Functional, streaming HTML generation. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
180+
- <b><a href="https://github.com/ndendic/RustyTags">rusty-tags</a></b> (🥉5 · ⭐ 7 · 🐣) - High-performance HTML generation library in Rust with Python.. <code>❗Unlicensed</code>
171181
- <b><a href="https://github.com/lxndrdagreat/phlex">phlex</a></b> (🥉5 · 💀) - Simple, flexible static HTML builder written in Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
172182
- <b><a href="https://github.com/maxpert/htmxido">htmxido</a></b> (🥉4 · ⭐ 21 · 💀) - HTMX generation in Python 3 using DSL. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
173183
- <b><a href="https://github.com/niklasf/python-tinyhtml">python-tinyhtml</a></b> (🥉4 · ⭐ 19 · 💤) - A tiny library to safely render compact HTML5 from.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
@@ -194,17 +204,17 @@ _Projects for generating HTML_
194204

195205
_Projects for generating HTML forms_
196206

197-
<details><summary><b><a href="https://github.com/pallets-eco/wtforms">wtforms</a></b> (🥇28 · ⭐ 1.6K · ➕) - A flexible forms validation and rendering library for Python. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code></summary>
207+
<details><summary><b><a href="https://github.com/pallets-eco/wtforms">wtforms</a></b> (🥇28 · ⭐ 1.6K) - A flexible forms validation and rendering library for Python. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code></summary>
198208

199-
- [GitHub](https://github.com/pallets-eco/wtforms) (👨‍💻 170 · 🔀 400 · 📥 37 · 📦 260K · 📋 470 - 13% open · ⏱️ 22.08.2025):
209+
- [GitHub](https://github.com/pallets-eco/wtforms) (👨‍💻 170 · 🔀 400 · 📥 37 · 📦 260K · 📋 470 - 12% open · ⏱️ 22.08.2025):
200210

201211
```
202212
git clone https://github.com/pallets-eco/wtforms
203213
```
204214
</details>
205215
<details><summary>Show 3 hidden projects...</summary>
206216

207-
- <b><a href="https://github.com/Pylons/deform">deform</a></b> (🥈20 · ⭐ 420 · ➕) - A Python HTML form library. <code>❗Unlicensed</code>
217+
- <b><a href="https://github.com/Pylons/deform">deform</a></b> (🥈20 · ⭐ 420) - A Python HTML form library. <code>❗Unlicensed</code>
208218
- <b><a href="https://github.com/boardpack/reforms">reforms</a></b> (🥉5 · ⭐ 25 · 💀) - Reforms is a fresh pydantic-based forms validation and rendering library.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
209219
- <b><a href="https://github.com/BlitzJB/blitz-forms">blitz-forms</a></b> (🥉4 · 💀) - python library to programmatically generate html forms. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
210220
</details>
@@ -216,7 +226,7 @@ _Projects for generating HTML forms_
216226

217227
_Projects for related to HTML generation_
218228

219-
<details><summary><b><a href="https://github.com/pydantic/FastUI">fastui</a></b> (🥇25 · ⭐ 8.9K · ➕) - Build better UIs faster.</summary>
229+
<details><summary><b><a href="https://github.com/pydantic/FastUI">fastui</a></b> (🥇25 · ⭐ 8.9K) - Build better UIs faster.</summary>
220230

221231

222232
---

0 commit comments

Comments
 (0)