Install#
PyPLUTO requires Python 3.11 or newer and is tested on 3.12, 3.13, and 3.14.
Core dependencies installed automatically:
astropycontourpyh5pyinifixmatplotlibnumexprnumpyscipy
The GUI requires the optional dependency PySide6, which must be requested
explicitly (see below).
From PyPI#
The recommended way to install PyPLUTO for most users:
$ pip install py-pluto
To include the GUI:
$ pip install py-pluto[gui]
To upgrade an existing installation to the latest release:
$ pip install py-pluto --upgrade
It is good practice to install into a dedicated virtual environment so that PyPLUTO’s dependencies do not conflict with other projects:
$ python -m venv .venv
$ source .venv/bin/activate # Windows: .venv\Scripts\activate
$ pip install py-pluto
With uv#
uv is a fast, modern Python package and project manager. There are two common workflows depending on whether you are working inside a project or in a standalone environment.
Inside a uv project (directory contains a pyproject.toml):
$ uv add py-pluto
To include the GUI:
$ uv add py-pluto[gui]
uv add records the dependency in pyproject.toml and updates
uv.lock. If you do not yet have a project, create one first with
uv init.
Without a project (standalone virtual environment):
$ uv venv # creates .venv in the current directory
$ source .venv/bin/activate # Windows: .venv\Scripts\activate
$ uv pip install py-pluto
Or, to run a one-off script without modifying any environment:
$ uv run --with py-pluto python my_script.py
With conda#
Create and activate a dedicated environment, then install via pip:
$ conda create -n pypluto python=3.12
$ conda activate pypluto
$ pip install py-pluto
To include the GUI add [gui]:
$ pip install py-pluto[gui]
From Source#
For development or to work with the latest code, clone the repository and install in editable mode:
$ git clone https://github.com/GiMattia/PyPLUTO.git
$ cd PyPLUTO
$ pip install -e .
With uv (recommended for contributors):
$ git clone https://github.com/GiMattia/PyPLUTO.git
$ cd PyPLUTO
$ uv sync --all-extras --all-groups
uv sync creates an isolated virtual environment and installs all
dependencies (including optional extras and development tools) in one step.
See contributing for the full contributor workflow.
Issues#
If you encounter any issues during installation, make sure pip is up to
date:
$ pip install --upgrade pip
If the problem persists, open an issue on the GitHub repository or contact the maintainers.