Skip to main content

Workbench

PyPI Python CI Documentation License

Workbench is a native Qt 6.8 technical-art application for editing Slang programs, inspecting compiler/reflection results, and seeing changes through QRhi without an export/relaunch loop.

Run Workbench

For a zero-install launch on Python 3.11–3.13:

uvx miskeyed-workbench

The equivalent command is pipx run miskeyed-workbench. For a persistent command, use pipx install miskeyed-workbench or uv tool install miskeyed-workbench.

Platform support

Platform Wheel Python Default backend CI runtime validation
Windows x64 ✅ Packaged 3.11–3.13 D3D11 ✅ D3D11 + Vulkan/SwiftShader on Py3.11
Linux x64 ✅ Packaged 3.11–3.13 Vulkan ✅ Vulkan/lavapipe on Py3.11
macOS arm64 ✅ Packaged 3.11–3.13 Metal ✅ Metal on Py3.11
macOS x86_64 ✅ Packaged 3.11–3.13 Metal ✅ Metal on Py3.11

Supported is the intended product contract. Packaged means a wheel is published. Tested means installed-package and native contracts run. Runtime validated means the named QRhi backend recorded a draw in the release matrix. See the detailed installation and platform support.

What Workbench is

It currently ships two contributions inside one document-centric shell:

  • Render Toy binds open documents to a Scene pass and a Post pass;
  • Shader Toy binds one document to a minimal fullscreen shader consumer.

Both share the workspace, editor, reflection-driven Inspector, deterministic time model, and native rendering services. ANARI host work remains opt-in research and is not a shipped UI mode.

Why Qt, Slang, and QRhi?

  • Slang supplies language semantics, modules, in-process compilation, reflection, entry points, and generated backend code.
  • Qt supplies the native application/widget lifecycle and Shiboken exposure.
  • QRhi supplies one native rendering seam across D3D11, Vulkan, and Metal.

C++ owns lifecycle, synchronization, command submission, resources, and Python exposure. There is no Python-owned renderer and no runtime slangc or qsb subprocess.

The distribution is miskeyed-workbench; the developer/library import is miskeyed.workbench. Wheels target CPython 3.11–3.13 on Windows x86_64, Linux x86_64, and macOS arm64/x86_64.

Platform and backend status

Auto selects D3D11 on Windows, Vulkan on Linux, and Metal on macOS; Windows may also request Vulkan with --rhi vulkan. The release matrix separately records whether each wheel built, installed in a fresh environment, passed installed-package contracts, and rendered through a QRhi backend. The active runtime backend is independent of the HLSL/GLSL/SPIR-V/Metal target selected in the Generated viewer.

Build from source

Requirements are CMake 3.24+, C++20, Qt/PySide/Shiboken 6.8.x, Slang, and Python 3.11–3.13. Set CMAKE_PREFIX_PATH to the Qt development SDK and SLANG_ROOT to the Slang SDK, then build without isolation:

python -m pip install --no-build-isolation -e . -v

The matching shiboken6-generator comes from Qt's package index rather than PyPI; the base dependencies alone are not enough for a source build.

Learn and contribute

Canonical screenshots and Sphinx HTML are generated deployment artifacts rather than repository inputs. On a built Windows checkout, reproduce the complete site with:

python -m pip install -r src/docs/requirements.txt
python -m ci.build_docs --output build/documentation/site

Pull requests upload the complete site as a read-only review artifact. Trusted same-repository PRs also publish that artifact to /dev/; fork PRs never publish. A release run publishes the immutable /0.3.0/ snapshot to the generated docs branch and updates the public root to redirect to that stable version.

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

miskeyed_workbench-0.3.0.tar.gz (209.9 kB view details)

Uploaded Source

Built Distributions

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

miskeyed_workbench-0.3.0-cp313-cp313-win_amd64.whl (51.7 MB view details)

Uploaded CPython 3.13Windows x86-64

miskeyed_workbench-0.3.0-cp313-cp313-manylinux_2_34_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_arm64.whl (12.9 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

miskeyed_workbench-0.3.0-cp312-cp312-win_amd64.whl (51.7 MB view details)

Uploaded CPython 3.12Windows x86-64

miskeyed_workbench-0.3.0-cp312-cp312-manylinux_2_34_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_arm64.whl (12.9 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

miskeyed_workbench-0.3.0-cp311-cp311-win_amd64.whl (51.7 MB view details)

Uploaded CPython 3.11Windows x86-64

miskeyed_workbench-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_x86_64.whl (14.0 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_arm64.whl (12.9 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file miskeyed_workbench-0.3.0.tar.gz.

File metadata

  • Download URL: miskeyed_workbench-0.3.0.tar.gz
  • Upload date:
  • Size: 209.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for miskeyed_workbench-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7f7578a087959a4dae708a8f7cc077bfac5ab346ff3a18bb1be4ea109e00bb01
MD5 294996956541d81ee8cabb25cf8853d9
BLAKE2b-256 9cf4725281f569fde0b4d537ddaa034534c6cfe6d17e378cba79b9d89e45ca9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0.tar.gz:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9ec6846d54a985ede2f23d15683a21d3fc4dbdfdf9f75e9991aec2a1040ab404
MD5 b7ebf67e41263c01eacf246c70e430b8
BLAKE2b-256 edb5364a819c02a642bcb912e3c35d244497a74968cc851d14f3b839e4e77b7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 fa5989665eba514c1429947da6f5873c701c0fc7f207bbc60891a3c18fe00734
MD5 db93b98f777539ac93e949bf43d927de
BLAKE2b-256 ac8c6eeaa53be0d8472feeca42ea933d96ab87548e5a9c8ca94ff465af8465cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp313-cp313-manylinux_2_34_x86_64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 24e01f73e8c8dadb368b7eddbff81ad9cab92aa95d82f18dc540e30c48fddd1a
MD5 8e2c2c295648e8dc5b7e1f5ab96bf4b8
BLAKE2b-256 ff49e58a50977a722dbdd6804f70dad6e663dfaf70cb634c480707b28d1ee1f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_x86_64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a7d898cbacc952c783175766509a64195b9d8661eae8eab154b23fdf3c14f704
MD5 89c5c199ea08f0d22d7c232b3c1f264c
BLAKE2b-256 4d0b25ef308fc0d40e902761ad4f7d37f03b515ebdedac9bcad3616e4f3cbf7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 36e0b106cc1e504b8db746b91435be37acf19ef99d5f694e213a7dd58898beeb
MD5 39a79bfc3a798780a3c6d7ad130bc867
BLAKE2b-256 c1ac16974a945e41ddb7299693f9149e90b87c1bf72430323f0cf78b8e29391a

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 6b6e5acc5301f1b5487dc9256373c67e4d3787d794ddc720c401f0047058f31e
MD5 cd0400264bc3afd5af95dd433d865563
BLAKE2b-256 a98fdfafcbb08ec858037d1a71485075f7f7f7d08cbaaa1b7ad556226421cbfb

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5a80fff106b1560920e6a0743370c4ee37e348fbfe91ef081cc43f828423edee
MD5 d0885b541f7d1e45ed61e1b882e6979b
BLAKE2b-256 59774b82713880f3b847ce2a9a013487881ce55128769e815402f642ff953f41

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_x86_64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8450a2a3bf920e13ab86e372dc58ce33f0300c0a33e0cf2d7d582bb6cde67b53
MD5 3087946e37db685fa1a054000894fead
BLAKE2b-256 25608ca0fbf16e1edd8c20db9c506e3b85c44effa9ed8c8d75ecef9e1be6e9ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b2fbdcc713b9a991a1ac0486c20a4066d16f12b1190e2e2e2d092ce9d5521dbd
MD5 ac6efbdb59f54fcaa3f6f2a1d27daefb
BLAKE2b-256 375f590d40c216384c3c311d6a49fa19bfa7162f236f3e8b3495ffd67ab11f64

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 b3031921fef80412d5c44bd1cf41f5f5ecd9c0861626ae24e80e4102f3c974ba
MD5 d3804ce60216f88442a847e252ae2aa0
BLAKE2b-256 16aa0c270ee9f3eef4ffc4fa1ed082ab24bceedc4848825da87f348fa0dd7ab8

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 13814f0adfdefe08cc6b5d6138a2663dd447609157c1cd57c322277d6e68e5df
MD5 2ec6e8edf5a069df8a5422ec9e00fa0c
BLAKE2b-256 09961449c19a1ad3419df02a3122a9d299c0c2603d8177d6533ea45eeb1416c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_x86_64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

File details

Details for the file miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c42a0a082d3365f3285402c486f135996765afac0314dd40faec81187790a917
MD5 d9950f8adef00bc090cce9df7198e7d3
BLAKE2b-256 25eed50074f36418916810d8398d31b154aa13727255f74c2800744d97836cb7

See more details on using hashes here.

Provenance

The following attestation bundles were made for miskeyed_workbench-0.3.0-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: release.yml on samjay3d/miskeyed-workbench

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

Release history Release notifications | RSS feed

This release

0.3.0 This release

13 files

0.2.1

4 files

0.2.0

4 files

0.1.1

4 files

0.1.0

2 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