Skip to main content

TheaterGWD Control Center – web-based OSC device manager for theater sensor hardware

Project description

annieData Control Center – TheaterGWD

The primary graphical interface for TheaterGWD sensor devices.

Built with Python. Runs in the browser. Designed for theater professionals.

Based on annieOSC — redesigned and rebuilt as a dedicated TheaterGWD control center.


Install

Platform Command
macOS (Homebrew) brew install halfsohappy/theatergwd/gooey
Linux (snap) sudo snap install gooey-theatergwd
Arch / Manjaro (AUR) yay -S gooey-theatergwd
Any (pip) pip install gooey-theatergwd

Then run:

gooey

Your browser opens automatically at http://127.0.0.1:5000.

Full Installation Guide — all methods, all platforms, troubleshooting.


What's Different from annieOSC

Issue in annieOSC Fixed in Control Center
Config strings split by spaces — commands like value:accelX, ip:192.168.1.50 broken into multiple args Config payloads sent as single string argument
Status/reply feed buried at bottom of TheaterGWD tab Always-visible live feed panel on the right
Many commands missing (delete, clone, rename, move, solo, setAll, etc.) Complete command coverage for all TheaterGWD operations
Generic OSC tool with TheaterGWD as an afterthought Purpose-built for TheaterGWD with organized sections
Status config button sends empty payload (does nothing) Proper status config form with IP, port, address fields
No structured input for clone/rename/move payloads Dedicated forms with source/destination fields
Tab-based layout hides the feed when sending commands Split-panel: controls left, live feed always visible

Layout

The interface uses a split-panel layout:

  • Left panel — Organized command sections (Dashboard, Messages, Scenes, Direct, Advanced, Reference)
  • Right panel — Always-visible live activity feed showing all sent/received messages
  • Top bar — Device connection settings and reply listener toggle

This enables operators to send commands and immediately see device replies without switching tabs.


Sections

Dashboard

Quick-access buttons for common operations:

  • Blackout / Restore — Emergency stop and resume
  • Save / Load — Persist to or restore from NVS
  • NVS Clear — Factory reset OSC config
  • List — Query messages, scenes, or everything (with verbose option)
  • Status Config — Tell the device where to send status messages

Messages

Complete message management:

  • Create/Update — Config builder with sensor value, target IP/port/address, bounds, scene assignment
  • Actions — Info, Enable, Disable, Delete, Save for any named message
  • Clone/Rename — Duplicate or rename messages

Scenes

Full scene control:

  • Start/Stop/Delete — Lifecycle management
  • Info/Save — Query details or persist individually
  • Period/AdrMode/Override — Configure scene behavior
  • Add/Remove/Solo/Move — Manage messages within scenes
  • setAll — Apply config to all messages at once
  • Clone/Rename — Duplicate or rename scenes

Direct

One-step setup with config builder — creates message + scene, links them, starts streaming.

Advanced

  • Raw OSC Send — Send arbitrary OSC messages (single or repeated)
  • JSON Batch — Send multiple messages from JSON
  • Bridge — Forward messages between ports/hosts

Reference

Searchable documentation for all:

  • Commands — Every OSC address pattern with description and expected payload
  • Keywords — Plain-language definitions for all TheaterGWD concepts
  • Config Keys — All key:value pairs accepted in config strings
  • Address Modes — How scenes compose OSC addresses

Command-Line Options

gooey [OPTIONS]

Options:
  --port PORT       Web server port (default: 5000)
  --host HOST       Web server host (default: 127.0.0.1)
  --no-browser      Don't auto-open browser on startup
  --debug           Enable debug mode

Examples:

gooey                           # Default — opens browser at localhost:5000
gooey --port 8080               # Use a different port
gooey --host 0.0.0.0            # Allow access from other devices on the network
gooey --no-browser              # Don't auto-open browser

Documentation

Guide Description
Installation All install methods for every platform
Homebrew Guide Homebrew-specific setup, updating, and troubleshooting
Quick Start First-time walkthrough of the UI
Troubleshooting Common issues and solutions
GUI Guide Full annieData Control Center guide
OSC Guide Controlling the device with raw OSC
Engineering Guide Architecture and protocol details

Tech Stack

Component Technology
Backend Python 3 + Flask
Real-time Flask-SocketIO (WebSocket)
OSC python-osc
Frontend Vanilla HTML / CSS / JS (no build step)

License

MIT License — Same as TheaterGWD.

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

gooey_theatergwd-1.2.1.tar.gz (138.2 kB view details)

Uploaded Source

Built Distribution

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

gooey_theatergwd-1.2.1-py3-none-any.whl (140.9 kB view details)

Uploaded Python 3

File details

Details for the file gooey_theatergwd-1.2.1.tar.gz.

File metadata

  • Download URL: gooey_theatergwd-1.2.1.tar.gz
  • Upload date:
  • Size: 138.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for gooey_theatergwd-1.2.1.tar.gz
Algorithm Hash digest
SHA256 971c21b607fecc9ae1bb40a24eb1b0124aca432810940b1fb427e127b7038f5e
MD5 a300a87c4add84f60a5c3d3e97d82b3d
BLAKE2b-256 4a38a091bd8db34a6493c88d9d5d2fd026d906e8831a132334048dd278a1060c

See more details on using hashes here.

File details

Details for the file gooey_theatergwd-1.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for gooey_theatergwd-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 baf67e15e81d4ba67e460c6d22fc3e98e1bd669ad6275fa99adef6d3f0a5ac99
MD5 af29b509ffa803621d2d0da1203edf8f
BLAKE2b-256 74df5f95044aa73c7631ff6604d08e94862dd79f9e9ce831207fb3f8d3d8fbca

See more details on using hashes here.

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