Skip to main content

A Python wrapper for ReactFlow using AnyWidget - build interactive node graphs without JavaScript

Project description

PyNodeWidget

A Python wrapper for ReactFlow using AnyWidget - build interactive node graphs without JavaScript.

Quick Start

from pynodewidget import NodeFlowWidget
from pynodewidget.grid_layouts import create_three_column_grid
from pynodewidget.models import ButtonHandle, NumberField, LabeledHandle, TextField

widget = NodeFlowWidget()

grid_layout = create_three_column_grid(
    left_components=[
        LabeledHandle(id="input", handle_type="input")
    ],
    center_components=[
        NumberField(id="value", value=50, min=0, max=100),
        TextField(id="name", value="Processor")
    ],
    right_components=[
        LabeledHandle(id="output", handle_type="output")
    ]
)

widget.add_node_type(
    type_name="processor",
    label="Processor",
    icon="⚙️",
    grid_layout=grid_layout
)
widget

Demo

Demo

Development

Requires:

  • Python 3.12+ (uv)
  • Bun for JavaScript bundling
# Install dependencies
uv venv
uv pip install -e .[all]

task

Documentation

# Serve documentation locally with live reload
task docs-serve

# Build static documentation
task docs-build

See full documentation at the project's GitHub Pages or run locally.

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

pynodewidget-0.2.0.tar.gz (935.6 kB view details)

Uploaded Source

Built Distribution

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

pynodewidget-0.2.0-py3-none-any.whl (504.3 kB view details)

Uploaded Python 3

File details

Details for the file pynodewidget-0.2.0.tar.gz.

File metadata

  • Download URL: pynodewidget-0.2.0.tar.gz
  • Upload date:
  • Size: 935.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pynodewidget-0.2.0.tar.gz
Algorithm Hash digest
SHA256 9908615200bdb7cb66323006f97005676cad0bbd97468219bc3e282666971d12
MD5 9a9eca088992e0f15f6701df4b72b136
BLAKE2b-256 94de786dfe0ef75fe4c6c6cd33b7d421a24312758bc75828ae60ff3632169ebe

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynodewidget-0.2.0.tar.gz:

Publisher: publish.yml on HenningScheufler/pynodewidget

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pynodewidget-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pynodewidget-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 504.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pynodewidget-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 406164f673664737adb60e5599f77444720f89323bb59da18f4ae912fc2d89cd
MD5 0aff9f962854c97b6ae8bc73a156b2ae
BLAKE2b-256 8cefef92bab40d1ccf75e48c4dd7e04d1e1857b2ca7f51d25b004eeb2f32189b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynodewidget-0.2.0-py3-none-any.whl:

Publisher: publish.yml on HenningScheufler/pynodewidget

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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