Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installation

Status: Current Last updated: 2026-08-31 22:01 EDT

batchalign3 is distributed via GitHub releases (there is no PyPI package). The installer bootstraps uv if needed, installs batchalign3 into an isolated environment using a uv-managed Python (3.13 by default), and re-running it upgrades to the latest release.

# macOS / Linux
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/FranklinChen/talkbank-tools/releases/latest/download/install-batchalign3.sh | sh
# Windows (PowerShell)
irm https://github.com/FranklinChen/talkbank-tools/releases/latest/download/install-batchalign3.ps1 | iex

After installing, open a new terminal so the batchalign3 command is on your PATH, then:

batchalign3 --help

Pre-built wheels are published for all five platforms (macOS Apple Silicon + Intel, Linux x86_64 + aarch64, Windows x86_64). One abi3 wheel per platform covers Python 3.13 and newer. batchalign3’s own dependencies still resolve from PyPI, so the first install downloads large ML dependencies.

System requirements

RequirementDetails
Python3.13 or 3.14 (a uv-managed 3.13 is used by default)
Disk spaceSeveral GB for ML models (downloaded on first use)
RAM8 GB minimum, 16 GB recommended
FFmpegOnly needed for some media formats
PlatformsmacOS Apple Silicon + Intel, Linux x86_64 + aarch64, Windows x86_64

Choosing the Python version

The installer uses a uv-managed Python 3.13 by default. To install against a different supported version, set BATCHALIGN3_PYTHON before running it:

BATCHALIGN3_PYTHON=3.13 curl --proto '=https' --tlsv1.2 -LsSf \
  https://github.com/FranklinChen/talkbank-tools/releases/latest/download/install-batchalign3.sh | sh

Double-click helpers

If you prefer not to use a terminal, the repo ships double-click wrappers that run the same installer:

The downloaded helpers are not code-signed, so macOS Gatekeeper / Windows SmartScreen may warn on first run; see the installers README for the click-through. They install uv if needed and then run the canonical installer.

Updating

Re-run the installer one-liner; it reinstalls the latest release in place:

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/FranklinChen/talkbank-tools/releases/latest/download/install-batchalign3.sh | sh

Offline / manual install from a wheel

Every release attaches per-platform wheels plus a sha256.sum. To install without the script (for example on an air-gapped machine), download the wheel for your platform from the latest release and install it with uv:

uv tool install --python 3.13 ./batchalign3-0.4.1-cp313-abi3-macosx_11_0_arm64.whl

First run

The first time you run a processing command (for example morphotag), ML models are downloaded automatically. This is a one-time cost of several GB and may take a few minutes depending on your connection; subsequent runs use cached models.

Evaluating the experimental GUI shell? See Batchalign Desktop (Experimental). The supported first-time user path is the batchalign3 CLI above.

Worker Python resolution

The CLI finds a Python 3.13 runtime automatically, via BATCHALIGN_PYTHON, the active virtualenv, a sibling/project .venv, or python3.13 on PATH. Override explicitly:

# macOS / Linux
export BATCHALIGN_PYTHON=/path/to/venv/bin/python

# Windows (PowerShell)
$env:BATCHALIGN_PYTHON = "C:\path\to\venv\Scripts\python.exe"

The visible batchalign3 command is a thin Python launcher that immediately execs the packaged Rust CLI binary. The launcher also preserves the chosen Python runtime for worker subprocesses, so batchalign3 serve ... and background/daemon flows run through the same Rust CLI/server codepath as direct invocation of the packaged binary.

Verify the installation

batchalign3 --help

Confirm the chosen Python runtime can import the worker package:

$BATCHALIGN_PYTHON -c "import batchalign.worker"

If you are relying on VIRTUAL_ENV or python3 instead of BATCHALIGN_PYTHON, run the same import check with that interpreter.

Rev.AI setup

If you plan to use the default Rev.AI-backed transcription path, initialize ~/.batchalign.ini:

batchalign3 setup

See Rev.AI Integration for details.

Development install

For contributors working from a source checkout:

git clone https://github.com/FranklinChen/talkbank-tools.git
cd talkbank-tools
make batchalign-python-prepare    # build wheel + sync uv env + install
make build                         # cargo build --workspace --release

make batchalign-python-prepare rebuilds the wheel via the maturin backend declared in pyproject.toml, runs uv sync --group dev --no-install-project, and installs the freshly built wheel into the dev environment.

make build runs cargo build --workspace --release. It does not rebuild the embedded dashboard; if you also need the React dashboard rebuilt, run make batchalign-dashboard-build (which requires Node.js + npm in addition to Rust and uv).

In a source checkout, uv run batchalign3 is the normal way to invoke the console script; the maturin backend’s profile = "dev" setting means each uv run ... triggers an incremental rebuild of the PyO3 extension on demand. Reserve uv run for Python tools such as pytest, mypy, and maturin when you are not invoking the CLI itself.

For the fastest contributor loop:

uv run batchalign3 --help        # incremental PyO3 rebuild via maturin/uv
cargo build -p batchalign         # native batchalign3 binary (debug)
./target/debug/batchalign3 --help

For the fuller contributor workflow and rebuild matrix, see Building & Development.


This page last changed: 2026-09-10 (commit 423245db). The whole book last changed: 2026-09-16 (commit 34d249d8).