Set up your toolchain

Two installs, that's it

Swift needed Xcode. Python needs two much smaller things:

  1. Python 3.12 โ€” the language itself (macOS: brew install python@3.12, or it may already be there).
  2. uv โ€” the modern Python package manager. It plays the role Swift Package Manager played in Part I: reads the project's dependency list and installs exactly those versions.

The backend's dependencies are declared in apps/backend/pyproject.toml โ€” that file is to Python what Package.swift or project.yml was to the iOS app.