Skip to main content

hedron-jinja

PyPI Python CI License: MIT

Explicit standards-first .hdj templates over Jinja, HTML, and HTMX for Hedron.

HDJ lets advanced applications write ordinary HTML, CSS, JavaScript, Web Components, Jinja, and HTMX directly while preserving typed Hedron components and render metadata. Install as hedron-jinja or via the flagship extra hedron[jinja].

Package maturity: Beta · Train: 0.28.x (last published 0.28.0) · pin >=0.28.0,<0.29

Install

pip install "hedron-jinja>=0.28.0,<0.29"
# or
uv add "hedron-jinja>=0.28.0,<0.29"
# via flagship:
pip install "hedron[jinja]>=0.28.0,<0.29"

Requires Python 3.11–3.14, hedron-core, and Jinja2.

Quick start

from jinja2 import Environment, FileSystemLoader
from hedron_jinja import HedronJinja, TemplateSpec

templates = HedronJinja(Environment(loader=FileSystemLoader("templates")))
result = templates.render(
    TemplateSpec("dashboard.hdj"),
    {"heading": "Operations"},
)
print(result.html)

Example templates/dashboard.hdj:

---hdj
version = 1
kind = "fragment"
profile = "standard"
regions = ["main"]
---
<main id="main" hx-history-elt>{{ view.heading }}</main>

Trust model

Templates are trusted application code, not a sandbox for hostile authors. Strict mode checks a finite dynamic sink matrix with purpose-specific URL filters. Deployment capability declarations and application policy remain separate and authoritative. Format v1 accepts static .hdj dependencies only; every source must render through HedronJinja.

Links

License

MIT. See the repository license.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hedron_jinja-0.28.0.tar.gz (35.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hedron_jinja-0.28.0-py3-none-any.whl (38.0 kB view details)

Uploaded Python 3

File details

Details for the file hedron_jinja-0.28.0.tar.gz.

File metadata

  • Download URL: hedron_jinja-0.28.0.tar.gz
  • Upload date:
  • Size: 35.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for hedron_jinja-0.28.0.tar.gz
Algorithm Hash digest
SHA256 dee280cebfcc09b0bda7cb9e657678ef2695f3d99b50a81d362307e1e3d06246
MD5 16f1b778efec7b312b734122e386de45
BLAKE2b-256 c94d4a4b5c032888c66b144d535df7382deb151ee3fb956afd79751cb6f2960f

See more details on using hashes here.

File details

Details for the file hedron_jinja-0.28.0-py3-none-any.whl.

File metadata

  • Download URL: hedron_jinja-0.28.0-py3-none-any.whl
  • Upload date:
  • Size: 38.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for hedron_jinja-0.28.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa915e5898c40ed4870580535c35278f36df8bce78b6b68a4daac4c3d1ed2033
MD5 d8ff38340c13e7041205458e94e08fe3
BLAKE2b-256 bbce6a05ce9b84d181cee0674318f5ae4fd350ba233b97bc7b7fa783f642d5d3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page