hedron-flask
Flask adapter for Hedron component rendering and HTMX interactions.
Render Page / fragment components with the same hedron-core
renderer used by FastAPI, map portable InteractionResult values to native Flask
responses, and integrate CSRF double-submit cookies with Flask sessions. Does not
install FastAPI.
Package maturity: Beta · Train: 0.64.x (published as v0.64.0 on PyPI) · application pin >=0.64.0,<0.65; repository checkouts use uv sync
Adapter capability readiness is Supported when pinned — see What’s ready.
Install
pip install "hedron-flask>=0.64.0,<0.65"
# or
uv add "hedron-flask>=0.64.0,<0.65"
Requires Python 3.11–3.14, hedron-core, and Flask 3.x.
Scaffold a new Flask app:
uvx --from "hedron>=0.64.0,<0.65" hedron new --flask my-flask-app
Quick start
from flask import Flask
from hedron_core import Heading, Page, Text
from hedron_core.interaction import FragmentRegion, InteractionResult
from hedron_flask import HedronBlueprint, HedronFlask
hedron = HedronFlask()
ui = HedronBlueprint("ui", __name__)
PANEL = FragmentRegion(id="panel", selector="#panel")
@ui.page("/")
def home():
return Page(
Heading("Hello Flask", level=1),
Text("Native Flask routing with Hedron components."),
title="Home",
)
@ui.component("/fragment", fragment_regions=(PANEL,))
def fragment():
return InteractionResult(content=Text("Fragment ok"), explanation="demo")
def create_app() -> Flask:
app = Flask(__name__)
app.secret_key = "replace-in-production"
hedron.init_app(app)
app.register_blueprint(ui)
return app
flask --app app:create_app run --reload
What this package includes
HedronFlask/init_appapplication integrationHedronBlueprintwith@page/@component/@actionstyle routingcomponent_response/interaction_responsehelpers- Fragment region authorization and approved HTMX header merging
- Portable
SecurityPolicyheaders and Flask-LoginAuthSignalbridge - Job status polling helpers (
poll_status_response)
Links
- Add to an existing Flask app
- Adapters API
- Changelog
- Source
- Issues
- Flask reference example
hedron-core·hedron·hedron-django
License
MIT. See the repository license.
Release files for hedron-flask 0.66.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hedron_flask-0.66.0.tar.gz | 25.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hedron_flask-0.66.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 51.3 kB
Release files / hedron_flask-0.66.0.tar.gz
| Download URL | hedron_flask-0.66.0.tar.gz |
|---|---|
| Size | 25.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d6a829281158ddd075d761f06fac569753ad54489ae59dc3998a62f6147a4f3c
|
|
BLAKE2b-256 checksum How to use checksums |
741aed6065e539b33bc85399141894772952b5daf2cc2cd45192613d15e868fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / hedron_flask-0.66.0-py3-none-any.whl
| Download URL | hedron_flask-0.66.0-py3-none-any.whl |
|---|---|
| Size | 26.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1e849ac04c30e8a708fd2a229f795e381951bddde44cdc3347485a7aa3db18b2
|
|
BLAKE2b-256 checksum How to use checksums |
79ad8c176a304f540eecd112a353b24672d77937df65584af5a73fbf7a70b957
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|