hedron-extras 0.18.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,33 @@
1
+ .DS_Store
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ *.egg-info/
6
+ .eggs/
7
+ dist/
8
+ /build/
9
+ # Artifact/output build trees only — never ignore package source such as
10
+ # packages/hedron/src/hedron/build (Hatchling respects gitignore and would
11
+ # omit it from sdists/wheels; see #32).
12
+ **/.hedron/build/
13
+ packages/hedron-runtime-java/build/
14
+ target/
15
+ .venv*/
16
+ venv*/
17
+ .env
18
+ .coverage
19
+ htmlcov/
20
+ .pytest_cache/
21
+ .mypy_cache/
22
+ .ruff_cache/
23
+ .hypothesis/
24
+ .tox/
25
+ .nox/
26
+ .audit-build-proj/
27
+ examples/reference-app/.hedron/
28
+ *.html.gz
29
+ /site/
30
+ *.so
31
+ *.dylib
32
+ *.pyd
33
+ .devcontainer/
@@ -0,0 +1,24 @@
1
+ # Changelog
2
+
3
+ ## [0.18.0] — 2026-08-06
4
+
5
+ ### Changed
6
+
7
+ - Coordinated Beta train with phase 0.18 model demos / inference workflows.
8
+
9
+
10
+ ## [0.17.0] — 2026-08-06
11
+
12
+ ### Changed
13
+
14
+ - Coordinated Beta train with phase 0.17 (`hedron-core>=0.17.0,<0.18`).
15
+
16
+ ## [0.16.0] — 2026-08-06
17
+
18
+ ### Added
19
+
20
+ - Initial Beta release of curated extras: composition UI, analysis workbenches,
21
+ CodeEditor/JSONEditor, image tools, calendar/signature/typeahead, display
22
+ recipes, browser-Python sandbox, and Experimental specialty extras
23
+ (TerminalView, joystick/device recipes).
24
+ - Per-feature capability manifests via `PluginContext.register_feature`.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Odos Matthews
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,66 @@
1
+ Metadata-Version: 2.4
2
+ Name: hedron-extras
3
+ Version: 0.18.0
4
+ Summary: Curated optional extras and analysis workbenches for Hedron
5
+ Project-URL: Homepage, https://github.com/eddiethedean/hedron
6
+ Project-URL: Repository, https://github.com/eddiethedean/hedron
7
+ Project-URL: Issues, https://github.com/eddiethedean/hedron/issues
8
+ Project-URL: Changelog, https://github.com/eddiethedean/hedron/blob/main/packages/hedron-extras/CHANGELOG.md
9
+ Project-URL: Documentation, https://hedron.readthedocs.io/en/latest/
10
+ Author-email: Odos Matthews <odosmatthews@gmail.com>
11
+ Maintainer-email: Odos Matthews <odosmatthews@gmail.com>
12
+ License-Expression: MIT
13
+ License-File: LICENSE
14
+ Keywords: components,extras,hedron,workbench
15
+ Classifier: Development Status :: 4 - Beta
16
+ Classifier: Intended Audience :: Developers
17
+ Classifier: License :: OSI Approved :: MIT License
18
+ Classifier: Programming Language :: Python
19
+ Classifier: Programming Language :: Python :: 3
20
+ Classifier: Programming Language :: Python :: 3 :: Only
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: 3.14
25
+ Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
26
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
27
+ Classifier: Typing :: Typed
28
+ Requires-Python: <3.15,>=3.11
29
+ Requires-Dist: hedron-core<0.19,>=0.18.0
30
+ Provides-Extra: all
31
+ Requires-Dist: hedron-charts<0.2,>=0.1.0; extra == 'all'
32
+ Requires-Dist: hedron-data<0.19,>=0.18.0; extra == 'all'
33
+ Provides-Extra: calendar
34
+ Provides-Extra: chart-workbench
35
+ Requires-Dist: hedron-charts<0.2,>=0.1.0; extra == 'chart-workbench'
36
+ Requires-Dist: hedron-data<0.19,>=0.18.0; extra == 'chart-workbench'
37
+ Provides-Extra: code-editor
38
+ Provides-Extra: data-explorer
39
+ Requires-Dist: hedron-data<0.19,>=0.18.0; extra == 'data-explorer'
40
+ Provides-Extra: image-tools
41
+ Provides-Extra: joystick
42
+ Provides-Extra: json-editor
43
+ Provides-Extra: sandbox
44
+ Provides-Extra: signature
45
+ Provides-Extra: terminal
46
+ Provides-Extra: typeahead
47
+ Description-Content-Type: text/markdown
48
+
49
+ # hedron-extras
50
+
51
+ Curated optional toolkit for specialized data-app interactions and analysis
52
+ workbenches (phase 0.16). Built on public Hedron plugin contracts — not a second
53
+ component runtime.
54
+
55
+ ```bash
56
+ pip install "hedron[extras]"
57
+ # or feature-scoped:
58
+ pip install "hedron-extras[code_editor,data_explorer]"
59
+ ```
60
+
61
+ Install isolation: absent extras add no core import, browser asset, startup, or
62
+ transitive dependency cost. Specialty surfaces (`TerminalView`, joystick/device
63
+ bridges) are **Experimental** and fail closed without explicit policy.
64
+
65
+ See the [roadmap](https://hedron.readthedocs.io/en/latest/guides/roadmap/) and
66
+ [what’s ready](https://hedron.readthedocs.io/en/latest/guides/whats-ready/).
@@ -0,0 +1,18 @@
1
+ # hedron-extras
2
+
3
+ Curated optional toolkit for specialized data-app interactions and analysis
4
+ workbenches (phase 0.16). Built on public Hedron plugin contracts — not a second
5
+ component runtime.
6
+
7
+ ```bash
8
+ pip install "hedron[extras]"
9
+ # or feature-scoped:
10
+ pip install "hedron-extras[code_editor,data_explorer]"
11
+ ```
12
+
13
+ Install isolation: absent extras add no core import, browser asset, startup, or
14
+ transitive dependency cost. Specialty surfaces (`TerminalView`, joystick/device
15
+ bridges) are **Experimental** and fail closed without explicit policy.
16
+
17
+ See the [roadmap](https://hedron.readthedocs.io/en/latest/guides/roadmap/) and
18
+ [what’s ready](https://hedron.readthedocs.io/en/latest/guides/whats-ready/).
@@ -0,0 +1,81 @@
1
+ [project]
2
+ name = "hedron-extras"
3
+ version = "0.18.0"
4
+ description = "Curated optional extras and analysis workbenches for Hedron"
5
+ readme = "README.md"
6
+ requires-python = ">=3.11,<3.15"
7
+ license = "MIT"
8
+ license-files = ["LICENSE"]
9
+ authors = [
10
+ { name = "Odos Matthews", email = "odosmatthews@gmail.com" },
11
+ ]
12
+ maintainers = [
13
+ { name = "Odos Matthews", email = "odosmatthews@gmail.com" },
14
+ ]
15
+ keywords = [
16
+ "components",
17
+ "extras",
18
+ "hedron",
19
+ "workbench",
20
+ ]
21
+ classifiers = [
22
+ "Development Status :: 4 - Beta",
23
+ "Intended Audience :: Developers",
24
+ "License :: OSI Approved :: MIT License",
25
+ "Programming Language :: Python",
26
+ "Programming Language :: Python :: 3",
27
+ "Programming Language :: Python :: 3 :: Only",
28
+ "Programming Language :: Python :: 3.11",
29
+ "Programming Language :: Python :: 3.12",
30
+ "Programming Language :: Python :: 3.13",
31
+ "Programming Language :: Python :: 3.14",
32
+ "Topic :: Internet :: WWW/HTTP :: Dynamic Content",
33
+ "Topic :: Software Development :: Libraries :: Python Modules",
34
+ "Typing :: Typed",
35
+ ]
36
+ dependencies = [
37
+ "hedron-core>=0.18.0,<0.19",
38
+ ]
39
+
40
+ [project.optional-dependencies]
41
+ code_editor = []
42
+ json_editor = []
43
+ data_explorer = ["hedron-data>=0.18.0,<0.19"]
44
+ chart_workbench = ["hedron-data>=0.18.0,<0.19", "hedron-charts>=0.1.0,<0.2"]
45
+ image_tools = []
46
+ calendar = []
47
+ signature = []
48
+ typeahead = []
49
+ sandbox = []
50
+ terminal = []
51
+ joystick = []
52
+ all = [
53
+ "hedron-data>=0.18.0,<0.19",
54
+ "hedron-charts>=0.1.0,<0.2",
55
+ ]
56
+
57
+ [project.entry-points."hedron.plugins"]
58
+ hedron_extras = "hedron_extras.plugin:register"
59
+
60
+ [project.urls]
61
+ Homepage = "https://github.com/eddiethedean/hedron"
62
+ Repository = "https://github.com/eddiethedean/hedron"
63
+ Issues = "https://github.com/eddiethedean/hedron/issues"
64
+ Changelog = "https://github.com/eddiethedean/hedron/blob/main/packages/hedron-extras/CHANGELOG.md"
65
+ Documentation = "https://hedron.readthedocs.io/en/latest/"
66
+
67
+ [build-system]
68
+ requires = ["hatchling"]
69
+ build-backend = "hatchling.build"
70
+
71
+ [tool.hatch.build.targets.wheel]
72
+ packages = ["src/hedron_extras"]
73
+
74
+ [tool.hatch.build.targets.sdist]
75
+ only-include = [
76
+ "src/hedron_extras",
77
+ "README.md",
78
+ "CHANGELOG.md",
79
+ "LICENSE",
80
+ "pyproject.toml",
81
+ ]
@@ -0,0 +1,70 @@
1
+ """Curated optional extras and analysis workbenches for Hedron."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from hedron_extras.composition import (
6
+ ChoiceCards,
7
+ ChoiceOption,
8
+ FloatingAction,
9
+ FocusScrollRequest,
10
+ KeyboardShortcuts,
11
+ ShortcutBinding,
12
+ SplitPane,
13
+ Steps,
14
+ TreeNodeProps,
15
+ TreeView,
16
+ )
17
+ from hedron_extras.display import DiagramOutput, LogConsole, TokenWeightedText
18
+ from hedron_extras.editors import Calendar, SignaturePad, Typeahead
19
+ from hedron_extras.image_tools import ImageAnnotations, ImageCompare, ImageCrop, ImageRegionSelect
20
+ from hedron_extras.recipes import AvatarProfile, BadgeLink, MetricCard, TodoList
21
+ from hedron_extras.sandbox import BrowserPythonSandbox, SandboxBudget
22
+ from hedron_extras.specialty import DeviceBridge, Joystick, TerminalPolicy, TerminalView
23
+ from hedron_extras.workbench import (
24
+ CallableActionForm,
25
+ ChartWorkbench,
26
+ CodeEditor,
27
+ DataExplorer,
28
+ JSONEditor,
29
+ )
30
+
31
+ __version__ = "0.18.0"
32
+
33
+ __all__ = [
34
+ "AvatarProfile",
35
+ "BadgeLink",
36
+ "BrowserPythonSandbox",
37
+ "Calendar",
38
+ "CallableActionForm",
39
+ "ChartWorkbench",
40
+ "ChoiceCards",
41
+ "ChoiceOption",
42
+ "CodeEditor",
43
+ "DataExplorer",
44
+ "DeviceBridge",
45
+ "DiagramOutput",
46
+ "FloatingAction",
47
+ "FocusScrollRequest",
48
+ "ImageAnnotations",
49
+ "ImageCompare",
50
+ "ImageCrop",
51
+ "ImageRegionSelect",
52
+ "JSONEditor",
53
+ "Joystick",
54
+ "KeyboardShortcuts",
55
+ "LogConsole",
56
+ "MetricCard",
57
+ "SandboxBudget",
58
+ "ShortcutBinding",
59
+ "SignaturePad",
60
+ "SplitPane",
61
+ "Steps",
62
+ "TerminalPolicy",
63
+ "TerminalView",
64
+ "TodoList",
65
+ "TokenWeightedText",
66
+ "TreeNodeProps",
67
+ "TreeView",
68
+ "Typeahead",
69
+ "__version__",
70
+ ]
@@ -0,0 +1,2 @@
1
+ // hedron-extras calendar host stub
2
+ export function mountCalendar(el){el.dataset.hedronCalendar='ready';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras CodeMirror host stub — pin real CM6 offline bundle for production
2
+ export function mountCodeEditor(el){el.dataset.hedronEditor='ready';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras composition helpers stub
2
+ export function mountComposition(el){el.dataset.hedronComposition='ready';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras image tools host stub
2
+ export function mountImageTool(el){el.dataset.hedronImage='ready';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras sandbox bridge stub — pin Pyodide offline; never inherits server session
2
+ export function mountSandbox(el){el.dataset.hedronSandbox='isolated';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras signature host stub
2
+ export function mountSignature(el){el.dataset.hedronSignature='ready';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras TerminalView host stub — fail-closed without allowlist
2
+ export function mountTerminal(el){if(el.dataset.allowlist!=='1'){el.textContent='Terminal disabled';return;}el.dataset.hedronTerminal='ready';}
@@ -0,0 +1,2 @@
1
+ // hedron-extras typeahead host stub
2
+ export function mountTypeahead(el){el.dataset.hedronTypeahead='ready';}