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.26.x (last published 0.26.0) · pin >=0.26.0,<0.27

Install

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

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 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.26.0.tar.gz (34.8 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.26.0-py3-none-any.whl (38.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hedron_jinja-0.26.0.tar.gz
  • Upload date:
  • Size: 34.8 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.26.0.tar.gz
Algorithm Hash digest
SHA256 02c97cc389408b6f2d81c80626cb4dbbff7fd4f74adc94feeb12a287a2cdee18
MD5 efb6b3894453ef4698841db0257c7a63
BLAKE2b-256 0c49325efca2aef588fd069c4c9deb1a27b23103e1b924dd6383cb13d16af488

See more details on using hashes here.

File details

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

File metadata

  • Download URL: hedron_jinja-0.26.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.26.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8fe650846d008891492c2259384f4de9fc5e9fc3b584f9f20af8ae19d969d128
MD5 3e1f2ab3ee61b6aa1503a163086c9637
BLAKE2b-256 7d500747c772b4545f8f70f1e698de1d374c6a3890a3bf75140af84250097806

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