Variant-aware CRISPR off-target nomination

CRISPRme predicts and prioritizes potential CRISPR off-target sites and — uniquely — accounts for individual and population genetic variants (SNVs and indels), flagging off-targets that exist only on certain haplotypes. It suits both population-wide and personal-genome analyses. ("Off-target nomination" just means producing a ranked, annotated list of candidate off-targets to validate.)

To search, you download a prebuilt index — a ready-made search database for a genome + PAM (no building required). Use the reference index for a basic scan, and a variant-aware index (e.g. 1000 Genomes-2021, or + HGDP) to catch off-targets created by human genetic variants — CRISPRme's main feature. The quickstart below downloads one for you.

Run CRISPRme on your own machine

CRISPRme is open source and actively maintained, and you can run the web interface locally on your own machine with the same functionality as before. The previous hosted application at crisprme.di.univr.it is no longer available, because institutional hosting at the University of Verona ended for this service. All features remain available to you.

The easiest way to get the same point-and-click experience is the Docker quickstart below — a few commands to a web interface running in your browser, with all the functionality of the previous hosted version. Prefer the command line for scripted or batch analyses? That works too.

Get started ↓ View on GitHub →

Quickstart — the web interface (Docker or Singularity)

The simplest way to run CRISPRme is in a container. Use Docker on a laptop or desktop, or Singularity / Apptainer on an HPC cluster (no root and no daemon needed). Either way it is a few commands: no conda, no compiling, and no giant download. Pick your runtime below.

1 — Install Docker & get the CRISPRme+ image

Install Docker for macOS, Windows, or Linux, and give it enough memory (Docker Desktop → Settings → Resources): 16 GB for a first / reference-only run, but 32 GB (64 GB recommended) for a genome-wide variant-aware search. You also need ≈ 100 GB free disk for the variant-aware setup (far less — ~20 GB — for a reference-only setup). Then check it works and pull the CRISPRme+ image:

docker run --rm hello-world

# Pull CRISPRme+ (multi-arch: Apple Silicon + Intel/Linux).
# ':latest' always tracks the newest release (currently v2.7.1); pin ':v2.7.1' for reproducibility.
docker pull pinellolab/crisprme:latest

Already have an older image? Docker won't refresh a tag you already have — run docker pull pinellolab/crisprme:latest again to update, or an old image will error with download is not an allowed command.

2 — Download the data and a ready-made index (minutes, not hours)

mkdir -p ~/crisprme && cd ~/crisprme

# reference genome, annotations, PAMs and sample lists
docker run --rm -v "${PWD}:/DATA" -w /DATA pinellolab/crisprme:latest \
  crisprme.py download --what all --path /DATA

# a ready-made SpCas9 NRG (NGG+NAG) reference index (skips a long index build)
docker run --rm -v "${PWD}:/DATA" -w /DATA pinellolab/crisprme:latest \
  crisprme.py download --what index --index-name NRG_3_hg38 --path /DATA

# the recommended default variant-aware index (phased HGDP + 1000 Genomes, 4,091 samples)
docker run --rm -v "${PWD}:/DATA" -w /DATA pinellolab/crisprme:latest \
  crisprme.py download --what index --index-name NRG_3_hg38+hg38_HGDP1kGP --path /DATA

3 — Launch the web interface

docker run --rm -v "${PWD}:/DATA" -w /DATA -p 8080:8080 -it \
  pinellolab/crisprme:latest crisprme.py web-interface

Leave it running and open http://127.0.0.1:8080. Stop with Ctrl+C.

Want variant-aware searches (CRISPRme's speciality)? Also download the 1000 Genomes variants with … crisprme.py download --what vcf --dataset 1000G --path /DATA (same docker run/apptainer run wrapper as above). You can skip this for a first run.

In the browser: enter a guide sequence, pick the PAM and genome, set mismatches and bulges, and click Submit. Off-targets are scored with CFD and the CRISPR-Bulge machine-learning model (Yaish & Orenstein, NAR 2024). Results are saved on your own machine under ~/crisprme/Results/.

Nothing in the dropdowns? You skipped step 2 — run the download commands first. Need a different nuclease or PAM? Install its index the same way, using a published name from the indexes/ folder of the lucapinello/crisprme-data repo. If an index isn't published, the web app will not build it on the fly — it tells you none is installed; pre-build it once with crisprme.py build-index-only.

Full quickstart & troubleshooting → Web interface user guide →

Other ways to install (Conda/Mamba, or build everything from scratch)

Install with Conda / Mamba

Note: Bioconda installs the last stable CRISPRme release (pre-2.2.0), not CRISPRme+ (the 2.6.x line). Use the Docker quickstart above for CRISPRme+ (currently v2.7.1).

# Configure Bioconda channels (one-time)
mamba config --add channels bioconda
mamba config --add channels conda-forge
mamba config --set channel_priority strict

# Create and activate the environment, then verify
mamba create -n crisprme crisprme -y
mamba activate crisprme
crisprme.py --version

Then fetch data the fast way just like the container path (crisprme.py download --what all --path "$PWD") and launch the interface with crisprme.py web-interface.

Build the full reference database from the original sources

Instead of the fast download, you can download and configure everything (hg38, 1000 Genomes, HGDP, annotations, PAMs) directly from the original sources with the built-in setup. This is a large, multi-hour, ~410 GB one-time download; the fast download above is recommended for most users.

# Docker
docker run -v ${PWD}:/DATA -w /DATA -i pinellolab/crisprme:latest \
  crisprme.py setup --path /DATA

# ...or test on a single chromosome first
docker run -v ${PWD}:/DATA -w /DATA -i pinellolab/crisprme:latest \
  crisprme.py setup --chrom chr22 --path /DATA

The web interface must be started from a working directory that contains the CRISPRme folders (Genomes/, PAMs/, Annotations/, …). The download and setup commands create these for you.

Advanced Resources & Documentation

The quick-start guide above is sufficient to get the local web interface running. For detailed usage instructions, advanced configuration options, and complete workflow documentation, consult the guides below.

Web Interface User Guide

Learn how to configure analyses, monitor jobs (with optional email notification), explore results, generate variant-aware personal risk cards, and use all visualization and reporting features available through the graphical interface.

Open Detailed User Guide

CLI Setup & Usage Guide

Complete documentation for installation, dataset management, command-line workflows, custom VCF integration, PAM definition, automation, and large-scale analyses.

Open CLI Guide

Documentation

Citation

Cancellieri S, Zeng J, Lin LY, Tognon M, Nguyen MA, Lin J, Bombieri N, Maitland SA, Ciuculescu MF, Katta V, Tsai SQ, Armant M, Wolfe SA, Giugno R, Bauer DE, Pinello L. Human genetic diversity alters off-target outcomes of therapeutic gene editing. Nat Genet. 2023 Jan;55(1):34-43. doi: 10.1038/s41588-022-01257-y.

Questions & Support

For questions, help with commands, bug reports, or feature requests, please open an issue on GitHub. Using the issue tracker lets the whole community benefit from the discussion and helps us track and resolve problems.

Open a GitHub issue Browse existing issues →