installation#

base package#

To use enjoyn, install the base package; then install at least one of the supported plugins.

PyPi release#

To install and/or upgrade the base package:

pip install --upgrade enjoyn

main branch#

To get the latest version from GitHub:

pip install --upgrade git+https://github.com/ahuang11/enjoyn

for development#

To run an editable installation, useful for development:

git clone https://github.com/ahuang11/enjoyn.git && pip install -e ".[dev]" && pre-commit install

supporting libraries#

GIF plugin#

Use gifsicle to render GIFs:

pip install pygifsicle

Then ensure the backend is installed:

which gifsicle

If not found, run one of the following:

  • Conda: conda install -c conda-forge gifsicle

  • Linux: sudo apt-get install gifsicle

  • Mac: brew install gifsicle

MP4 plugin#

Use ffmpeg to render MP4s:

pip install imageio_ffmpeg

Then ensure the backend is installed:

which ffmpeg

If not found, run one of the following:

  • Conda: conda install -c conda-forge ffmpeg

  • Linux: sudo apt-get install ffmpeg

  • Mac: brew install ffmpeg

task graph#

Use graphviz to visualize dask task graphs:

pip install graphviz

dependencies#

Python packages

internal use case

dask[delayed]

local parallelization

imageio

image serialization

pydantic

input validation

typing_extensions

type annotation

dask[distributed]

distributed parallelization, optional

pygifsicle

GIFs, optional

image_ffmpeg

MP4s, optional

graphviz

task graphs, optional