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.3.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.3-py3-none-any.whl (24.2 kB view details)

Uploaded Python 3

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

Hashes for haybale_core-0.0.3.tar.gz
Algorithm Hash digest
SHA256 a4f423ddd6df9173248cd58beaf1661e69565160124599b4d85b35aec0f9f05d
MD5 f95ec5198a3b53ce4470502dd9879535
BLAKE2b-256 2d732cbc7dca8d5def488b40275e485a1f90a379c245e079f971ef17cc26ef8f

See more details on using hashes here.

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

Hashes for haybale_core-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3c613ece43f8ec66081792e3bec615d5a7a712c65796db958467bb4bdf879b72
MD5 e2a92105761dcee39634ce8f843b33aa
BLAKE2b-256 3b7f5bf4f77aed330e8c2e428f4bff2e4d542d7de76c82d623cb010f841748f0

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