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.1.tar.gz (1.2 MB 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.1-py3-none-any.whl (703.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pynodewidget-0.2.1.tar.gz
Algorithm Hash digest
SHA256 63b3e09aece57157f60216af9cfb08999a26258945a06ce897f082a78e6d9d97
MD5 0a8212eb13c9f26a20a3fe0fa5c2c283
BLAKE2b-256 219115f279d3085b36ccae802d39a7dac1334866a9cd1ff22a89f4081e41bc60

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynodewidget-0.2.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: pynodewidget-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 703.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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 97deeaa58588a094cef9e59b910675782acb0aff8e85916633663ad47e5e0bd0
MD5 f88793c4302a8353a95831eaf6ccc543
BLAKE2b-256 d4318fb8f590c595c0d8b729a4f45c0a0f7da4c85a61c7114c48960f4fef599f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pynodewidget-0.2.1-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