Installation

Requirements

Requirement Minimum
macOS 14 (Sonoma)
Python 3.10

Nib apps run only on macOS: rendering is SwiftUI and the system services are Apple APIs.

Install from PyPI

pip install pynib

The package contains the Python SDK and the prebuilt Swift runtime (nib-runtime, universal arm64 and x86_64). No Xcode or Swift toolchain is needed.

Check the command is available:

nib --help

If nib is not found, the Python bin directory is not on your PATH. Inside a virtual environment, activate it first:

python3 -m venv .venv
source .venv/bin/activate
pip install pynib

Build from source

To work on Nib itself or run unreleased changes you need Xcode or the Command Line Tools (xcode-select --install).

git clone https://codeberg.org/edo/nib.git
cd nib
make install

make install builds the universal runtime in release mode, signs it, copies it into the SDK and runs pip install -e ., so edits to the Python code take effect immediately.

Command What it does
make install Universal runtime build plus editable install.
make install-dev Same, but builds the runtime for this machine only. Faster while iterating on Swift code.
make build-runtime Rebuild and install only the runtime.
make test Python test suite.
make smoke End-to-end check against the real runtime. Needs a GUI session.

After rebuilding the runtime, fully quit and restart any running Nib app: nib run reloads Python but keeps the runtime process alive.

Next