Skip to main content

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:

  1. With editable install: Changes are immediately reflected (after hot-reload)
  2. 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

haybale_core-0.0.4.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

haybale_core-0.0.4-py3-none-any.whl (24.2 kB view details)

Uploaded Python 3

File details

Details for the file haybale_core-0.0.4.tar.gz.

File metadata

  • Download URL: haybale_core-0.0.4.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

Hashes for haybale_core-0.0.4.tar.gz
Algorithm Hash digest
SHA256 34c9a96bfc5727ae6be00810e5216b3e3b0d5fb36147c0a4e730152dcfac7a98
MD5 543a9f09df899f39014ce9d65de8d0ea
BLAKE2b-256 7f8463ac1498528ceb7a330f8c30634139fda2fd3bb1d86dec00c6ce80ed2df9

See more details on using hashes here.

File details

Details for the file haybale_core-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: haybale_core-0.0.4-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

Hashes for haybale_core-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d98e2c9d8dec058a557e62dfe8102319944bb3dfe66440e3a4ddddbc904e032d
MD5 7bdb6d581715e36f102b6bdc12bf3391
BLAKE2b-256 29a95b7a4ec97f1cde08a7232b6876fa82ac2c1e9f8421d0deb14f30d8534f57

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 Pingdom Monitoring Sentry Error logging StatusPage Status page