Skip to main content

TouchPy is a high-performance toolset to work with TouchDesigner components in Python

Project description

PyPI version PyPI - Python Version

TouchPy

TouchPy is a high-performance Python toolset for working with TouchDesigner components headlessly via the TouchEngine SDK. It provides GPU-accelerated data exchange (CUDA/Vulkan) for TOPs, CHOPs, DATs, and parameters.

Requirements

  • Windows 10/11 (x64)
  • TouchDesigner installed (runtime dependency)
  • NVIDIA GPU with CUDA support
  • Python 3.9 - 3.14 (3.12 recommended for development)

Installation

If you simply want to use TouchPy and run the examples, you don't need to clone this repo:

uv add touchpy[examples]

This installs TouchPy with CUDA-enabled PyTorch and numpy for running the examples.

uv is required for dependency management. Install it via pip install uv or see the uv docs.

Quick Start

import touchpy as tp

comp = tp.Comp()
comp.load("path/to/component.tox")
comp.start()

if comp.frame_did_finish():
    comp.start_next_frame()

See the examples/ directory for more detailed usage including TOPs with PyTorch tensors, CHOPs, DATs, and parameter control.

Documentation

Full API documentation is available at intentdev.github.io/touchpy.


Development

Prerequisites

Setup

git clone --recurse-submodules https://github.com/IntentDev/touchpy.git
cd touchpy
uv venv --python 3.12
uv sync --extra examples

If you already cloned without --recurse-submodules:

git submodule update --init

This creates a .venv with Python 3.12, builds TouchPy from source (via scikit-build-core), and installs CUDA-enabled PyTorch + numpy for running examples.

Note: Python 3.12 is recommended. PyTorch wheels for 3.13+ may have packaging issues.

Rebuilding after C++ changes

uv sync --extra examples --reinstall-package touchpy

Or equivalently:

uv pip install -ve .

Build a wheel

uv build

Verify

import touchpy
print(touchpy.__version__)  # shows 0.12.0.dev0 for local dev builds

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

touchpy-0.12.1.tar.gz (918.3 kB view details)

Uploaded Source

Built Distributions

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

touchpy-0.12.1-cp314-cp314-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.14Windows x86-64

touchpy-0.12.1-cp313-cp313-win_amd64.whl (983.7 kB view details)

Uploaded CPython 3.13Windows x86-64

touchpy-0.12.1-cp312-cp312-win_amd64.whl (983.7 kB view details)

Uploaded CPython 3.12Windows x86-64

touchpy-0.12.1-cp311-cp311-win_amd64.whl (983.6 kB view details)

Uploaded CPython 3.11Windows x86-64

touchpy-0.12.1-cp310-cp310-win_amd64.whl (983.4 kB view details)

Uploaded CPython 3.10Windows x86-64

touchpy-0.12.1-cp39-cp39-win_amd64.whl (983.7 kB view details)

Uploaded CPython 3.9Windows x86-64

File details

Details for the file touchpy-0.12.1.tar.gz.

File metadata

  • Download URL: touchpy-0.12.1.tar.gz
  • Upload date:
  • Size: 918.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1.tar.gz
Algorithm Hash digest
SHA256 d85d06500b67b0286aa73de8d2078e9ef86ed6ec373765d438e5f289f84db5cd
MD5 4a7e9340634a6e22640fd7658890d126
BLAKE2b-256 7f041f4435478be49505f19d1aee1a345ca120d2e845285285c7ff22a89c7943

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1.tar.gz:

Publisher: wheels.yml on IntentDev/touchpy

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

File details

Details for the file touchpy-0.12.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: touchpy-0.12.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 936a30fbdde544a1f3fd5138c0f8b241a7a258066bfc71ec0a536f9351692146
MD5 f7b2a0ecb499ed59994cd76baff021e2
BLAKE2b-256 9b4a5d72b39cb5036991881e827fc21306f1c87587b4c717e0d5cbbc4d6372f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1-cp314-cp314-win_amd64.whl:

Publisher: wheels.yml on IntentDev/touchpy

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

File details

Details for the file touchpy-0.12.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: touchpy-0.12.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 983.7 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 052726b40bcb9dc6cc139a319c1433e235514ee195f5e2c61ef73064921ddac5
MD5 4562f7ef5d0292ec7700d18611861c39
BLAKE2b-256 3e37f239e7ac38787c7ad23d695775fa2d3701c6718a115c8baf8e048acdc938

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on IntentDev/touchpy

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

File details

Details for the file touchpy-0.12.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: touchpy-0.12.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 983.7 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 bc499e5d9e419278e81458c3184bec68d725f753d995c71e05dba7196e92fec6
MD5 8b4a2f2325d497b32dd08faaeb1f14e0
BLAKE2b-256 d17140e4f027eabdacc5c558eadad783cdcb37cfbffd692bdf7f261e4d64fb50

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on IntentDev/touchpy

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

File details

Details for the file touchpy-0.12.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: touchpy-0.12.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 983.6 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 24bf331bcdaf3499d7a4a433ef7d06b020c6a6c4a83146f5784d09e350c3c8bd
MD5 c35e903512815296be82badbb0e52aa5
BLAKE2b-256 d0711755ba4184f0766241b2b079c0a7b502a3047abf2d2c3708036cb1974c5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on IntentDev/touchpy

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

File details

Details for the file touchpy-0.12.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: touchpy-0.12.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 983.4 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2ee7d10bb0de3b7d4964bd0a604b638f8daf7c8de77be4892dee6e7b51a94b3d
MD5 659160c7f3d019e0c304e888f7cdf7c4
BLAKE2b-256 90c5fd10c68a12dbf348f21053abc17a7b5f7f41fa4ed8b89c6a1c83a10a7496

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on IntentDev/touchpy

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

File details

Details for the file touchpy-0.12.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: touchpy-0.12.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 983.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for touchpy-0.12.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5802ba19a1913642f564e77a6a6e9c92baa2238f6db34cc334a0d07daeaa9b61
MD5 f6f3ab39d4844f8067ec6bd68fc089aa
BLAKE2b-256 430a20a5f58cca512fe90dfedfade659577d83689d3a5afcdda31971957a3a1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for touchpy-0.12.1-cp39-cp39-win_amd64.whl:

Publisher: wheels.yml on IntentDev/touchpy

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