ShowRunner
An application to help running live shows!
About
ShowRunner is a collection of tools for live performances including script parsing, cue management, and more. It is built using Python and is designed to be flexible, extensible, and powerful for stage managers, designers, directors, and crew members involved in live productions.
Documentation
Documentation can be found in the docs/ directory, or available online: quaternionmedia.github.io/ShowRunner/
Quick Start
Install with pip
pip install showrunner[all]
The [all] extra includes optional dependencies for the admin panel, CLI, and other tools. You can also install just the core API with pip install showrunner and add extras as needed.
Install from source
Requires uv
Clone the repo
git clone https://github.com/quaternionmedia/ShowRunner.git
cd ShowRunner
Create a virtual environment (recommended)
uv venv
# Activate the virtual environment:
source .venv/bin/activate
If you are not using a virtual environment, run commands with uv run [cmd]
Install dependencies
Including dev tools and optional extras (admin panel, CLI, etc.)
uv sync --all-extras
Start the API server
sr start
Visit http://localhost:8000 to access the dashboard and tools.
Use sr --help for CLI options and sr [tool] --help for tool-specific commands.
Tools
- ShowAdmin: Web-based database admin panel mounted at /admin (requires
admingroup) - ShowCmd: A command-line interface to interact with the system with a CLI or TUI
- ShowComms: A communication tool for crew members to coordinate during a performance, including messaging and cue notifications
- ShowDashboard: Show selector and control dashboard mounted at /
- ShowDesigner: Allows users to design cues based on the parsed script, including setting up cue layers for specific integration with other tools
- ShowLighter: Integrates cues directly with lighting control systems for design and performance (ETC Eos, Chamsys, MA Lighting, etc.)
- ShowLogger: Logs all events and commands in the system to a file and/or stdout for debugging and archival purposes
- ShowManager: Designed for Stage Managers to manage cues during a live performance, including triggering cues
- ShowMixer: Operates sound mixers to monitor and control channels and effects during a performance (Behringer, Allen & Heath, etc.)
- ShowProgrammer: Synchronization with QLab and other tools to automatically create and label cues from a script
- ShowPrompter: A teleprompter application that can display scripts and cues for performers and crew
- ShowRecorder: A tool for archiving, annotating, and reviewing rehearsals and performances, including cue logs and performance notes
- ShowScripter: Script viewer (PDF, Fountain, etc.) with inline cue placement mounted at /script
- ShowStopper: A stopwatch with helpful features for live performances, such as logging and cue timing
Contributing
See CONTRIBUTING.md for dev setup, testing, linting, and plugin authoring guidelines.
uv run pytest # run tests
uv run ruff check . # lint
Credit
Designed and developed by Quaternion Media
Metadata
Release files for showrunner 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| showrunner-0.3.0.tar.gz | 58.8 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| showrunner-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 129.7 kB
Release files / showrunner-0.3.0.tar.gz
| Download URL | showrunner-0.3.0.tar.gz |
|---|---|
| Size | 58.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
290e5683f3b34333892c41bf28813f09afdddb6a2d45924fbc5d82c1b73a242d
|
|
BLAKE2b-256 checksum How to use checksums |
268d22d5fc371da83f04874eb355a78aaeefd7d8fb4ced889b777769c1108408
|
| 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 Oct 11, 2026.
Transparency logRelease files / showrunner-0.3.0-py3-none-any.whl
| Download URL | showrunner-0.3.0-py3-none-any.whl |
|---|---|
| Size | 70.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
daeb306c93034aaffa1a910b6ed9f06097dd1b208dcb1dce5efb1ae321136929
|
|
BLAKE2b-256 checksum How to use checksums |
9f29d8cc5daf76c8fd9b25c9a94aa62ce62f705ed7970a5f3b9d4fe657cfb104
|
| 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 Oct 11, 2026.
Transparency logSecurity for showrunner 0.3.0
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for showrunner-0.3.0.tar.gz
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 Oct 11, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.