We strongly recommend using uv because it bundles Python 3.11, installs dependencies in seconds, and keeps the workflow to two commands.
./scripts/bootstrap.sh # macOS / Linux
scripts\bootstrap.ps1 # Windows PowerShell./start.sh # macOS / Linux
start.bat # Windows CMDThis starts both FastAPI services under uv, runs the Electron client, and cleans up the servers when you close the UI. Re-run the bootstrap script any time you need to refresh dependencies.
Prefer to keep everything in a container? The provided image uses uv inside the
container so the backend is ready in one build step. This target runs the
FastAPI API (:4242), the PyTC worker service (:4243), the Neuroglancer
bridge (:4244), and TensorBoard (:6006). Electron is not included—use your
local client or Electron build to talk to the containerised backend.
- Docker with Compose V2 (
docker compose)
docker compose build backenddocker compose up backendWhen you are done:
docker compose downYou can now point the desktop client at http://localhost:4242.
If you prefer to manage Python environments yourself, follow the steps below. Expect a slower install and more moving pieces.
-
Create / activate an environment
python -m venv .venv source .venv/bin/activate # Windows: .\.venv\Scripts\activate
-
Install backend dependencies
pip install -r server_api/requirements.txt
-
Download & install pytorch_connectomics
./setup_pytorch_connectomics.sh pip install -e pytorch_connectomics
-
Install frontend dependencies
cd client npm install cd ..
-
Run the app (three terminals or background processes)
python server_api/main.py python server_pytc/main.py cd client && npm run electron