airium
Easy and quick html builder with natural syntax correspondence (python->html). No templates needed. Serves pure pythonic library with no dependencies.
Decision gist · record as of 2026-08-14
Yes, if you prefer writing HTML in Python over templates and want zero external dependencies. The package is stable (Beta status, no known vulnerabilities) but aging—last release was 430 days ago. Suitable for small to medium projects; verify performance and framework integration for your specific use case before adopting in production.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- No runtime dependencies and a pure-Python wheel distribution make installation straightforward.
- The package is aging (430 days since last release) but carries a Beta status and has received recent maintenance as of 2025-06-10.
License · maintenance · safety
MIT (permissive) — MIT license is permissive, allowing free use, modification, and distribution in both open-source and proprietary projects with minimal restrictions.
last release 2025-06-10 (430 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 96,967 downloads/mo, #13,182 on PyPI
Alternatives
Verify before relying
from airium import Airium
a = Airium()
a('<!DOCTYPE html>')
with a.html():
with a.body():
a.h1(_t='Hello World')
print(str(a))- Whether the reverse translator (HTML to Python) is production-ready or limited to specific HTML patterns
- Performance characteristics when generating large or deeply nested HTML documents
- Compatibility with modern web frameworks beyond the Django example shown
What it is and what it does
Airium is a Python library that generates HTML by treating DOM structure as Python indentation and context managers, eliminating the need for separate template files. Instead of writing HTML templates, you write Python code where nesting is expressed through `with` statements, and element attributes and text are passed as function arguments. The library supports both pretty-printed (indented, human-readable) and minified output modes.
The package also includes a reverse translator to parse existing HTML back into Python code. It has no external dependencies, works across Python 3.8 through 3.13 and PyPy, and can be integrated into web frameworks like Flask or Django to replace template engines entirely. Output can be cast to string or UTF-8 bytes directly.
Use it for
- Generate HTML programmatically in Flask or Django views without writing separate template files
- Build dynamic HTML tables, forms, or page structures where the layout is determined by Python logic
- Create minified HTML output for production when file size matters
- Convert existing HTML documents into Python code for programmatic manipulation
- Generate email HTML bodies or static site content from pure Python
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you prefer writing HTML in Python over templates and want zero external dependencies.
The package is stable (Beta status, no known vulnerabilities) but aging—last release was 430 days ago. Suitable for small to medium projects; verify performance and framework integration for your specific use case before adopting in production.
Install
airium on PyPI
Before you install
No runtime dependencies and a pure-Python wheel distribution make installation straightforward. The package is aging (430 days since last release) but carries a Beta status and has received recent maintenance as of 2025-06-10.
License in practice
MIT license is permissive, allowing free use, modification, and distribution in both open-source and proprietary projects with minimal restrictions.
Quickstart
from airium import Airium
a = Airium()
a('<!DOCTYPE html>')
with a.html():
with a.body():
a.h1(_t='Hello World')
print(str(a))
Verify before relying
- Whether the reverse translator (HTML to Python) is production-ready or limited to specific HTML patterns
- Performance characteristics when generating large or deeply nested HTML documents
- Compatibility with modern web frameworks beyond the Django example shown
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Aging 430 days since the last release |
| First released | |
| Downloads | 96,967 / month, #13,182 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersIntended Audience :: Information TechnologyIntended Audience :: Science/ResearchIntended Audience :: System AdministratorsIntended Audience :: Telecommunications IndustryOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: PyPyTopic :: Database :: Front-EndsTopic :: DocumentationTopic :: Internet :: WWW/HTTPTopic :: Internet :: WWW/HTTP :: BrowsersTopic :: Internet :: WWW/HTTP :: Dynamic ContentTopic :: Scientific/Engineering :: VisualizationTopic :: Software Development :: Code GeneratorsTopic :: Text Processing :: Markup :: HTMLTopic :: Utilities |
Evidence: airium-0.2.7-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “template-less html builder”
- airiumAirium generates HTML from Python code using indentation and context…
- html5taggerGenerates HTML5 markup programmatically using Python syntax instead…
- htbuilderhtbuilder lets you construct HTML strings using Python function calls…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also hyperscript · dominate · tinyhtml · html2image · htbuilder · htmlBuilder · branca · meld3 · py-markdown-table · html5tagger