What runs on iOS
What works on the device, what iOS does not allow, and what to know about safety.
Runs on this device
- CPython 3.14, with its standard library
- Your projects, tests and the debugger
- Local web servers: Django, Flask, FastAPI, and Starlette on Uvicorn
- Notebooks, with cells that share one namespace
- Pure-Python packages from PyPI, per project
- NumPy and PyTorch, bundled and compiled for iOS; Core ML through
pythilo.coreml - npm installs from the registry, and esbuild builds
Not possible on iOS
- Starting other programs, subprocesses or multiprocessing. That is why reloaders,
uvicorn --workersandmanage.py dbshellare refused, and why there is no Node. - Installing compiled packages that Pythilo does not bundle.
- Docker and database servers.
Not there yet
- pandas, Matplotlib and SciPy: nobody publishes iOS builds of them for Python 3.14 yet.
- PyTorch on the GPU (MPS) and
torch.compile. - A Jupyter server, other kernels, and debugging notebook cells.
- Git over SSH, submodules and LFS.
Worth knowing
Only run code you trust
All projects share one Python process. Pythilo resets it between runs, but that is cleanup and not a security boundary. Code you run can read and change files in Pythilo's storage and use the network, as any program can.
- A compiled call that never returns cannot be stopped from inside the app. Your files are already saved, so closing the app loses nothing.
- Servers stop when iOS suspends the app in the background.
- Threads a program leaves running stay until Pythilo closes; the Output panel names them.
Found something that should work and does not? Tell us.