Installation¶
Requirements¶
- Python 3.12 – 3.14 (including free-threaded 3.14t)
- Nothing else for a normal install — binary wheels are published for Linux (x86_64/aarch64), macOS (arm64/x86_64) and Windows, so pip never has to compile the Rust extension.
- A Rust toolchain and maturin ≥ 1.0 only if you build from a checkout.
Install from PyPI¶
That gives you the library and the interactive HTML reports. To also run the
browser app locally, add the app extra and use the console script:
dot-explorer-app starts the Shiny app on http://127.0.0.1:8000 and opens a
browser. See Web App for the options.
Optional extras¶
| Extra | Installs | Gives you |
|---|---|---|
app |
shiny |
The local browser app (dot-explorer-app) |
cluster |
sourmash ≥ 4.8, scipy ≥ 1.10 |
Similarity metrics, clustering and trees |
docs |
zensical, mkdocstrings-python, nbconvert |
Building these docs |
Combine them as usual:
Both are optional rather than core dependencies for concrete reasons: shiny
pulls in orjson, which has no free-threaded wheel, so requiring it would make
the package uninstallable on 3.14t; and scipy + sourmash add roughly 110 MB,
more than doubling the install for users who only want dot plots.
Core dependencies¶
Installed automatically:
| Package | Purpose |
|---|---|
matplotlib ≥ 3.5 |
Dotplot visualisation |
numpy ≥ 1.21 |
Array operations used by matplotlib |
pyfaidx |
Lazy, indexed FASTA access (pure Python, ~0.2 MB) |
Install from a checkout¶
Use this if you want to modify the Rust core. It needs a Rust toolchain:
git clone https://github.com/Adamtaranto/dot-explorer.git
cd dot-explorer
pip install maturin
maturin develop --release
The --release flag enables full Rust compiler optimisations, which is
strongly recommended for any non-trivial dataset. To work on the app as well:
See the Development Guide for the full contributor setup.