Drop-in COMPs that connect TouchDesigner to Google Cloud Platform services -- real-time data sync, cloud storage, and more. Each component handles authentication, connection management, and offline resilience so you can focus on your project.
Real-time bidirectional sync between Firestore collections and TouchDesigner tableDATs. Includes offline write queue, circuit breaker, and auto-bootstrap.
- Real-time listeners -- Firestore changes appear in tableDATs instantly
- Write-back -- edit table cells and changes push to Firestore automatically (500ms debounce)
- Offline queue -- writes made while disconnected are persisted to SQLite and retried on reconnect
- Circuit breaker -- exponential backoff prevents runaway reconnection loops
- Auto-bootstrap -- installs Python dependencies (
firebase-admin) on first run viauv - Collection discovery -- auto-discover all collections or specify an explicit list
- Document & field filtering -- include/exclude by document ID or field name
- Callbacks -- hook into
onFirestoreChange,onWriteComplete,onConnectionStateChange - Cache hydration -- populate tables from local cache on startup for instant data
Upload, download, sync, and manage files in Firebase Storage directly from TouchDesigner. Includes concurrency control, circuit breaker, and folder sync with orphan deletion.
- Upload & download -- push and pull files with automatic subfolder structure preservation
- Folder sync -- bidirectional sync with direction control (
upload,download,both) - Orphan deletion -- mirror-style sync with
Delete Remote Orphans/Delete Local Orphanstoggles - Concurrency control --
Max Concurrentlimits simultaneous transfers with automatic queuing - Listing & metadata --
ListFilesandGetMetadatafor browsing remote blobs asynchronously - URL generation --
GetPublicUrlandGetSignedUrlfor sharing files - Circuit breaker -- exponential backoff prevents runaway reconnection loops
- Auto-bootstrap -- installs Python dependencies (
firebase-admin,google-cloud-storage) on first run viauv - Callbacks -- hook into
onTransferComplete,onListComplete,onSyncComplete,onConnectionStateChange - Transfer tracking --
transferstableDAT for real-time status monitoring
- TouchDesigner 2025.32280 or later
- Google Cloud project with the relevant service(s) enabled (Firestore, Storage, etc.)
- Service account JSON key with appropriate permissions
- Download the latest
.toxfrom Releases - Drag it into your TouchDesigner project
- Set the Private Key File parameter to your service account JSON
- The component auto-installs Python dependencies and connects
Full docs: theexperiential.github.io/td-gcp
MIT