Stop vibe-debugging. Every exception, every backtrace, grouped so you see patterns, not noise. Learn more →
Top 23 Python HTML Projects
-
Extraction Engine: Choose from third-party OCR providers like Datalab, Mistral OCR, or PaddleOCR, or configure self-hosted instances of Tika, Docling, and MinerU. Instance-specific details, at least a URL and access token, need to be provided too.
-
AppSignal
AppSignal knows why the f*#k it crashed. Stop vibe-debugging. Every exception, every backtrace, grouped so you see patterns, not noise.
-
quivr
Opiniated RAG for integrating GenAI in your apps 🧠 Focus on your product rather than the RAG. Easy integration in existing products with customisation! Any LLM: GPT4, Groq, Llama. Any Vectorstore: PGVector, Faiss. Any Files. Anyway you want.
-
pyscript
An open source platform for Python in the browser. https://pyscript.net Docs: https://docs.pyscript.net/ Try it: https://pyscript.com/ Community: https://discord.gg/HxvBtukrg2
-
-
Project mention: wkhtmltopdf is archived with an open CVE — a field guide to moving off it | dev.to | 2026-08-26
If your documents are print-oriented (invoices, contracts, statements), your templates don't run JavaScript, and you're on Python — WeasyPrint is the closest thing to a spiritual successor: a real @page-first CSS engine, no browser process at all, excellent page-break control, actively maintained.
-
-
Project mention: Looking for a Remote Job in Python/Django/Flask | news.ycombinator.com | 2025-12-17
3. https://github.com/r0x0r/pywebview/pull/958 [Pywebview - A lightweight library for building desktop apps with html|css|js ]
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
-
-
pretix
Ticket shop application for conferences, festivals, concerts, tech events, shows, exhibitions, workshops, barcamps, etc.
Project mention: Revel (letsrevel.io) alternatives - pretix and Hi.Events | libhunt.com/r/revel-backend | 2026-10-01 -
dominate
Dominate is a Python library for creating and manipulating HTML documents using an elegant DOM API. It allows you to write HTML pages in pure Python very concisely, which eliminate the need to learn another template language, and to take advantage of the more powerful features of Python.
-
selectolax
Python binding to Modest and Lexbor engines. Fast HTML5 parser with CSS selectors for Python.
Project mention: Selectolax: a faster BeautifulSoup alternative for Python scraping at scale | dev.to | 2026-05-19Selectolax is a Python binding for the Lexbor HTML parser. Lexbor is a C library built from scratch for speed. It implements the HTML5 spec and supports CSS selectors.
-
-
flask-wtf
Simple integration of Flask and WTForms, including CSRF, file upload and Recaptcha integration.
-
-
-
-
djLint
HTML template formatter and linter for Django, Jinja, Twig, Nunjucks, Handlebars, Liquid, Go templates, Mustache, Tera, Askama and Angular. Formats markup and template syntax together, and lints for accessibility, correctness and style. CLI, pre-commit hook and VS Code extension.
-
-
100LinesOfCode
🚀 100+ mini-projects demonstrating the power of concise code. Perfect for learning, portfolio building, and first-time open source contributors. Under 100 lines each!
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Python HTML discussion
Python HTML related posts
-
PyScript
-
Show HN: Myjs An accidental pure-Python JavaScript interpreter
-
Render an HTML Table to PNG in Python (5 Ways, 2026)
-
Weasyprint: Web-Based Document Design
-
Show HN: DoScript – DSL for file automation with natural language syntax
-
Show HN: DoScript – Automation language with English-like syntax
-
Show HN: Wxpath – Declarative web crawling in XPath
-
A note from our sponsor - AppSignal
www.appsignal.com | 5 Oct 2026
Index
What are some of the best open-source HTML projects in Python? This list will help you:
| # | Project | Stars |
|---|---|---|
| 1 | docling | 68,256 |
| 2 | quivr | 39,578 |
| 3 | pyscript | 18,687 |
| 4 | requests-html | 13,829 |
| 5 | WeasyPrint | 9,653 |
| 6 | grip | 6,836 |
| 7 | pywebview | 6,082 |
| 8 | toapi | 3,555 |
| 9 | pandas-datareader | 3,270 |
| 10 | best-of-web-python | 2,763 |
| 11 | pretix | 2,528 |
| 12 | dominate | 1,830 |
| 13 | selectolax | 1,686 |
| 14 | WTForms | 1,582 |
| 15 | flask-wtf | 1,511 |
| 16 | mlscraper | 1,385 |
| 17 | plutoprint | 1,164 |
| 18 | pypandoc | 1,152 |
| 19 | djLint | 949 |
| 20 | portray | 861 |
| 21 | 100LinesOfCode | 848 |
| 22 | fasthx | 732 |
| 23 | MarkupSafe | 697 |