Installation¶
Most people: Docker, then First analysis. This page is the normal install path. Pip extras, install profiles, environment variables, and gates are in Installation details.
Docker (recommended)¶
No local Python required. Copy .env.example to .env, set HOST_RECORDINGS_DIR to an absolute path outside this repository, then:
docker compose up transcriptx-web
Open http://localhost:8501. The first run builds the image. Container notes: docker.md. Speech-to-text stays on the host (whispermlx on macOS); stacks: STT stacks.
Native (from this repository)¶
Python 3.10–3.12. The package is not on PyPI — clone the repo and install from there.
The launcher creates a .transcriptx virtual environment, installs dependencies, and starts the web UI:
./transcriptx.sh
Open http://localhost:8501. Core-only: TRANSCRIPTX_CORE=1 ./transcriptx.sh.
If you use a native install and want language features such as topic modeling, the launcher’s fast path includes the NLP extra. Download the English model once:
python -m spacy download en_core_web_md
Both the extra and the model are required for those modules. Docker images already include this.
GUI workspaces: pip install -e ".[web]" (and ./transcriptx.sh) install the in-repo transcriptx-workspaces package used for Speaker Identification, Corrections Studio review, and Correct-mode click-drag. That extra uses a git-checkout file: path; it is not a PyPI dependency. Docker vendors the workspaces wheel in a later build step after stripping the checkout-only file: extra from the TranscriptX wheel (image pip cannot parse that URL) and installing that wheel with --no-deps. Speaker Identification does not fall back to classic widgets if the package is missing.
Balanced analysis and charts: A minimal pip install -e . omits plotting libraries. Many Balanced modules write charts; without them, those modules can fail and block downstream results (for example summary and highlights). Prefer ./transcriptx.sh, pip install -r requirements.txt plus pip install -e ., or at least pip install -e ".[visualization,web]" when you run the web UI from a venv. Details: Installation details.
After install¶
Follow First analysis.
Bring a file you already have, or generate one from audio — Transcription.
Name speakers before the first Balanced run (most modules skip placeholder labels), then keep Balanced unless you have a reason not to. Edit Quick / Balanced / Thorough under Settings → Analysis — Settings.
Troubleshooting¶
“No module named …” after a native install — install dependencies first (
pip install -r requirements.txtthenpip install -e .), or reinstall with the extras you need (pip install -e ".[full,web]"). See Installation details.spaCy model errors — the language model is a separate download from the NLP extra. Run
python -m spacy download en_core_web_md.GPU / Apple Silicon — Docker on Mac is CPU-only (the predictable path). Native MPS is supported-with-caveats; if a model fails, retry with
TRANSCRIPTX_FORCE_CPU=1 ./transcriptx.sh. See known limitations.Offline / blocked downloads — environment variables.
Advanced¶
Installation details — extras, install profiles, gates, environment variables, Streamlit flags
Docker — Compose, volumes, CPU vs GPU images