Setuav Studio SDK
The Setuav Studio SDK defines the public Python contracts used by third-party
plugins. It provides the plugin lifecycle, StudioAPI, contribution
descriptors, and provider callback types without exposing application
implementation details.
Installation
pip install setuav-studio-sdk
The SDK supports Python 3.11 and newer.
Plugin lifecycle
A plugin exposes a stable reverse-domain ID, registers its contributions in
activate, and removes them in deactivate:
from PySide6.QtWidgets import QLabel
from setuav_studio_sdk import PanelContribution, StudioAPI
class HelloPlugin:
id = "com.example.hello"
priority = 100
def activate(self, api: StudioAPI) -> None:
api.add_panel(
PanelContribution(
id="com.example.hello.panel",
title="Hello Plugin",
factory=lambda: QLabel("Hello from a Setuav Studio plugin"),
)
)
def deactivate(self, api: StudioAPI) -> None:
api.remove_panel("com.example.hello.panel")
Plugins are discovered through the setuav_studio.plugins Python entry-point
group. Contribution and entry-point IDs must be unique; use a reverse-domain
prefix owned by your project.
Declare the plugin entry point in pyproject.toml:
[project.entry-points."setuav_studio.plugins"]
"com.example.hello" = "my_plugin.plugin:HelloPlugin"
API reference
Read the online SDK API reference for the complete public contract documentation.
The example plugin contains package metadata, an entry point, lifecycle implementation, and tests that can be used as a starting point for a new plugin.
Development
To regenerate the API reference or run the contract tests, clone the Setuav Studio repository and run these commands from its root:
cd packages/setuav-studio-sdk
doxygen Doxyfile
cd ../..
uv run --locked python scripts/sdk_contract_tests.py
The generated reference documents only public setuav_studio_sdk modules.
Metadata
Release files for setuav-studio-sdk 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| setuav_studio_sdk-0.1.1.tar.gz | 15.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| setuav_studio_sdk-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.1 kB
Release files / setuav_studio_sdk-0.1.1.tar.gz
| Download URL | setuav_studio_sdk-0.1.1.tar.gz |
|---|---|
| Size | 15.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b6f6e979e54fdcbc7733337f77963b0b941b7573fb4fbaee66465cee296731f9
|
|
BLAKE2b-256 checksum How to use checksums |
a0bd315eca69d793bb02863a7f44479f3b99ec3fb11ae012761a175acc19320d
|
| 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 Sep 16, 2026.
Transparency logRelease files / setuav_studio_sdk-0.1.1-py3-none-any.whl
| Download URL | setuav_studio_sdk-0.1.1-py3-none-any.whl |
|---|---|
| Size | 15.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4027c7753ffa745a9922b31a2645fbc360c5c88ada046330d9786ce270de9d3d
|
|
BLAKE2b-256 checksum How to use checksums |
c7677a5b2febd54b1f243a8020f962c81341a9fb5d1d065a1470214ffe503ef5
|
| 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 Sep 16, 2026.
Transparency log