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.49.x (published v0.49.1) · pin >=0.49.1,<0.50
Adapter capability readiness is Supported when pinned — see What’s ready.
Install
pip install "hedron-flask>=0.49.1,<0.50"
# or
uv add "hedron-flask>=0.49.1,<0.50"
Requires Python 3.11–3.14, hedron-core, and Flask 3.x.
Scaffold a new Flask app:
uvx --from "hedron>=0.49.1,<0.50" 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.49.1
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.49.1.tar.gz | 22.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hedron_flask-0.49.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 48.5 kB
Release files / hedron_flask-0.49.1.tar.gz
| Download URL | hedron_flask-0.49.1.tar.gz |
|---|---|
| Size | 22.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
509268efa4e0f4e19fe7f8c4ac3f635dbc2d09b640493369b31023037b72114d
|
|
BLAKE2b-256 checksum How to use checksums |
8a77bf2612690713fb8727065f8903c04c0d3f8e4e0495bc8ccd4f8dbaed731f
|
| 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.49.1-py3-none-any.whl
| Download URL | hedron_flask-0.49.1-py3-none-any.whl |
|---|---|
| Size | 25.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dfb0e09c033f9ebd8f724e707e2b3e7965e86c6e49bd7d68cf00aaad766e66a4
|
|
BLAKE2b-256 checksum How to use checksums |
bace6429a2c79c78d90e692eae902263aa1939dbdc2359d187d7e7d19d6ccc8e
|
| 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}
|