Core library for Haywire node system with core types, nodes, widgets, and renderers
Project description
Haywire Core Library
This is a core library providing essential types, nodes, widgets, and renderers for the Haywire library system.
Features
- Types: Core data types with serialization support
- Nodes: Nodes for data processing and display
- Widgets: UI widgets for node configuration
- Renderers: Node rendering customization
- Adapters: Integration with external systems
Installation
Development (Editable Install)
For development with hot-reload support:
cd libraries/haybale-core
uv pip install -e .
Production
uv pip install haybale-core
Usage
Once installed, the library is automatically discovered by Haywire through entry points.
The library provides:
- Display nodes for visualization
- Dynamic nodes for runtime node creation
- Core data types
- Core UI widgets and renderers
Structure
📁 haybale-core/ # Git repo name / unique pip package name
├── pyproject.toml
│ [project]
│ name = "haybale-core" # pip install haybale-core
│
│ [project.entry-points."haywire.libraries"]
│ core = "haybale_core:Library" # ID matches module
│
└── 📁 haybale_core/ # import haybale_core
├── __init__.py
│ @library(
│ id='CORE', # Matches entry point
│ label='Core Library',
│ )
│ class Library(BaseLibrary): ...
├── nodes/ # Core nodes
├── types/ # Core data types (if any)
├── widgets/ # Core UI widgets
├── renderers/ # Core node renderers
└── adapters/ # Core system adapters
Development
After making changes to the library code:
- With editable install: Changes are immediately reflected (after hot-reload)
- Without editable install: Reinstall the package
Entry Point
This library is discoverable via the haywire.libraries entry point:
[project.entry-points."haywire.libraries"]
core = "haybale_core:Library"
Dependencies
- None
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file haybale_core-0.0.3.tar.gz.
File metadata
- Download URL: haybale_core-0.0.3.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a4f423ddd6df9173248cd58beaf1661e69565160124599b4d85b35aec0f9f05d
|
|
| MD5 |
f95ec5198a3b53ce4470502dd9879535
|
|
| BLAKE2b-256 |
2d732cbc7dca8d5def488b40275e485a1f90a379c245e079f971ef17cc26ef8f
|
File details
Details for the file haybale_core-0.0.3-py3-none-any.whl.
File metadata
- Download URL: haybale_core-0.0.3-py3-none-any.whl
- Upload date:
- Size: 24.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c613ece43f8ec66081792e3bec615d5a7a712c65796db958467bb4bdf879b72
|
|
| MD5 |
e2a92105761dcee39634ce8f843b33aa
|
|
| BLAKE2b-256 |
3b7f5bf4f77aed330e8c2e428f4bff2e4d542d7de76c82d623cb010f841748f0
|