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.2.tar.gz (16.6 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.2-py3-none-any.whl (24.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: haybale_core-0.0.2.tar.gz
  • Upload date:
  • Size: 16.6 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.2.tar.gz
Algorithm Hash digest
SHA256 acf74948c457dc8dc89ab8852e0ef833e8a9499f847b6f5baed0303f232cca9d
MD5 64869c2227621af769c24ec0e1215bbe
BLAKE2b-256 e3315f2cb78b94b8720a12e093400a24b9a07441446906c6e6513814e7780520

See more details on using hashes here.

File details

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

File metadata

  • Download URL: haybale_core-0.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b875e1ad974789c3524b7e3630574fc4b3aefd50e67a917ed0f2561960babf29
MD5 74514884eaf766f71e351d56dc78646d
BLAKE2b-256 b600564ae9fe41d2c1350e2a63b4d1b6cca84ac98765d0c08f66fafdae7848a1

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