Skip to main content

pyqt-reactive

Reactive, ObjectState-backed forms and reusable application infrastructure for PyQt6.

PyPI version Documentation Status Python 3.11+

Quick start

ParameterFormManager renders an existing ObjectState. The state is the model; the form is a view over it.

from dataclasses import dataclass

from PyQt6.QtWidgets import QApplication
from objectstate import ObjectState, set_base_config_type
from pyqt_reactive.forms.parameter_form_manager import (
    FormManagerConfig,
    ParameterFormManager,
)
from pyqt_reactive.theming import ColorScheme

@dataclass
class ProcessingConfig:
    input_path: str = ""
    num_workers: int = 4
    enable_gpu: bool = False

app = QApplication([])
set_base_config_type(ProcessingConfig)
state = ObjectState(ProcessingConfig(), scope_id="processing")
form = ParameterFormManager(
    state,
    config=FormManagerConfig(color_scheme=ColorScheme()),
)
form.show()
app.exec()

Do not pass a dataclass type or instance directly to ParameterFormManager. Create ObjectState(instance) so edits, dirty tracking, hierarchy, and cross-window updates share one authority.

Ownership

pyqt-reactive owns generic widget protocols and strategies, form lifecycle, field-change dispatch, reusable services and managers, previews, animations, and window infrastructure. Host applications own domain workflows and adapters.

Installation

python -m pip install pyqt-reactive

For development:

git clone https://github.com/OpenHCSDev/PyQT-reactive.git
cd PyQT-reactive
python -m pip install -e ".[dev]"

Full documentation: pyqt-reactive.readthedocs.io

Metadata

Release files for pyqt-reactive 0.3.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyqt-reactive 0.3.5
File Size Uploaded
pyqt_reactive-0.3.5.tar.gz 610.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyqt-reactive 0.3.5
File Interpreter ABI Platform
pyqt_reactive-0.3.5-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / pyqt_reactive-0.3.5.tar.gz

Download URL pyqt_reactive-0.3.5.tar.gz
Size 610.1 kB
Tags Source
SHA-256 checksum
How to use checksums
044f98e789544c59894ad13c698a2c4accca6fbbf9678afc84995686e00d1f39
BLAKE2b-256 checksum
How to use checksums
2a6cd40e7f65fe0e8218adc4c74ca551103be5bdb720a8d652c36a7b3386faf7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / pyqt_reactive-0.3.5-py3-none-any.whl

Download URL pyqt_reactive-0.3.5-py3-none-any.whl
Size 545.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a50de15083b87bb7706f140d78ca6fdc0006360a27a446d6a13022f541735da0
BLAKE2b-256 checksum
How to use checksums
f9a3bdba7baa07bfb58c98b3bedd66d71982eb64b31f554b417bcfb9137a67ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.24

2 release files

0.3.23

2 release files

0.3.22

2 release files

0.3.15

2 release files

0.3.14

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

This release

0.3.5 This release

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

2 release files

0.2.11

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.31

2 release files

0.1.30

2 release files

0.1.29

2 release files

0.1.28

2 release files

0.1.27

2 release files

0.1.26

2 release files

0.1.25

2 release files

0.1.24

2 release files

0.1.23

2 release files

0.1.22

2 release files

0.1.21

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page