Installation#
Important
It’s always a good idea to use virtual environments. Installing into a global environment can get you in trouble later!
These instructions presuppose that you know how to create and activate virtual environments with your tool of choice.
Installing the latest stable release#
Tip
Installing with a conda-based tool (mamba, conda, micromamba, or pixi) lets you
install qgis alongside JupyterGIS, enabling .qgz file support.
QGIS is a C++ application and cannot be installed via pip or uv.
mamba install -c conda-forge jupytergis qgis
jupyter lab # Start JupyterLab!
Warning
When installing with pip, QGIS compatibility and optional tiler functions won’t work out of the box.
You may especially run in to problems with Python 3.14, for which many geospatial
libraries still lack wheels as of May 2026.
You’re on your own!
pip install jupytergis
jupyter lab # Start JupyterLab!
Tip
Installing with a conda-based tool (mamba, conda, micromamba, or pixi) lets you
install qgis alongside JupyterGIS, enabling .qgz file support.
QGIS is a C++ application and cannot be installed via pip or uv.
Install into a project:
pixi add jupytergis qgis
pixi run jupyter lab # Start JupyterLab!
Or run directly without a permanent install:
pixi exec --spec jupytergis --spec qgis jupyter lab
Warning
When installing with pip, QGIS compatibility and optional tiler functions won’t work out of the box.
You may especially run in to problems with Python 3.14, for which many geospatial
libraries still lack wheels as of May 2026.
You’re on your own!
Install into a project:
uv add jupytergis
uv run jupyter lab # Start JupyterLab!
Or run directly without a permanent install:
uv run --with jupytergis jupyter lab
docker run -p 8888:8888 ghcr.io/geojupyter/jupytergis:latest
Docker build source: geojupyter/jupytergis-docker
Installing dynamic tiling functionality#
To use dynamic tiling functionality, you’ll need our “tiler” optional dependencies.
For any of the above commands, replace jupytergis with jupytergis[tiler] (for
pip/uv) or jupytergis-tiler (for conda/mamba/pixi).
Note
This functionality is available as of version 0.16.0.
Installing a pre-release#
To install a pre-release, replace install commands shown above with these examples. Changes include:
Specify a pre-release version exactly; here’s we’re using pre-release
0.16.0a4as an example.When installing a Conda package with mamba/conda/pixi, add the pre-release channel as highest priority channel.
When installing a PyPI package with pip/uv, add a flag to allow installing pre-releases.
mamba install \
--channel conda-forge/label/jupytergis_prerelease \
--channel conda-forge \
jupytergis==0.16.0a4 qgis
jupyter lab # Start JupyterLab!
pip install --pre jupytergis==0.16.0a4
jupyter lab # Start JupyterLab!
Without a permanent install:
pixi exec \
--channel conda-forge/label/jupytergis_prerelease \
--channel conda-forge \
--spec jupytergis==0.16.0a4 \
--spec qgis \
jupyter lab
Without a permanent install:
uv run --prerelease=allow --with jupytergis==0.16.0a4 jupyter lab