In silico spoligotyping of Mycobacterium tuberculosis complex (MTBC) samples, from sequencing reads (fastq) or genome assemblies (fasta). spoligotyper finds the 43 spacers of the direct repeat (DR) locus with Seal from BBTools and reports the spoligotype as binary, octal and hexadecimal codes, and as an SB number from the Mbovis.org database. It also identifies the species and the lineage, and flags contaminated or mixed samples.
PDF report of the tutorial: summary, and the evidence for each sample.
Features
- Reads or assemblies: single-end or paired-end fastq, or fasta, gzipped or not. For nanopore data, type the assembly (why).
- Batch mode: point it at a folder; fastq and fasta files are detected and R1/R2 files paired automatically.
- All the standard codes: binary, octal, hexadecimal, and SB number for M. bovis and other animal-adapted lineages.
- Species and lineage: M. tuberculosis, M. africanum, M. bovis, BCG, ... from regions of difference, and the lineage (1 to 7 and sublineages) from a 62-SNP barcode.
- Quality checks: fraction of MTBC reads (contamination), mixed samples, consistency between the spoligotype, species and lineage, and the closest known patterns for new spoligotypes.
- PDF report for QA: results, reads supporting each spacer, input files with checksums, software versions, parameters, operator, date, and a review box. Plus a table, JSON and a MultiQC section for pipelines.
- Validated on 16 reference genomes and 8 read sets of known species, lineage and spoligotype (Validation).
- Workflow ready: nf-core module and Galaxy tool in
integrations/. - Transparent: borderline calls, low depth and failed samples are flagged, never hidden.
- Fast: a few seconds per sample, with 1 GB of memory.
Installation
conda install -c conda-forge -c bioconda spoligotyper
Or with pip, if BBTools is already installed (conda install -c bioconda bbmap): pip install spoligotyper.
See Installation for other options.
Quick start
spoligotyper -r1 sample_R1.fastq.gz -r2 sample_R2.fastq.gz -o results/ # Paired-end reads
spoligotyper -r1 sample.fastq.gz -o results/ # Single-end reads
spoligotyper -r1 assembly.fasta -o results/ # Assembly (also for nanopore data)
spoligotyper -i folder/ -o results/ # All the samples in a folder
The results are printed and saved in results/ as a table and a PDF report. New to the tool? The
tutorial types three public genomes in a few minutes.
Documentation
The wiki covers usage and options, output files, how it works, species and lineage, validation, troubleshooting and the FAQ.
Citing
If you use spoligotyper, please cite it and BBTools, which finds the spacers:
Duceppe M-O. spoligotyper: in silico spoligotyping of Mycobacterium tuberculosis complex genomes. Zenodo. https://doi.org/10.5281/zenodo.22926160
This DOI always points to the latest version; each release also has its own DOI, listed on Zenodo. GitHub's "Cite this repository" button gives the same citation in APA and BibTeX formats.
Bushnell B. BBTools. https://sourceforge.net/projects/bbmap/
For the lineage, please also cite the SNP barcode:
Coll F et al. A robust SNP barcode for typing Mycobacterium tuberculosis complex strains. Nat Commun 5, 4812 (2014). https://doi.org/10.1038/ncomms5812
Contributing
Bug reports, questions and pull requests are welcome: see CONTRIBUTING.md.
Author
Marc-Olivier Duceppe, Canadian Food Inspection Agency (CFIA): marc-olivier.duceppe@inspection.gc.ca
License
Release files for spoligotyper 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| spoligotyper-0.4.1.tar.gz | 134.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| spoligotyper-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 258.7 kB
Release files / spoligotyper-0.4.1.tar.gz
| Download URL | spoligotyper-0.4.1.tar.gz |
|---|---|
| Size | 134.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2a3d5771b7ffbd469ed9e2002a8d228722ade4c44e9cacc62c5a99d7cdf453fc
|
|
BLAKE2b-256 checksum How to use checksums |
aa5666a7c52978721a07af35feac394dab3f80da69fcdfb8d3b328c7b915773b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.
Transparency logRelease files / spoligotyper-0.4.1-py3-none-any.whl
| Download URL | spoligotyper-0.4.1-py3-none-any.whl |
|---|---|
| Size | 123.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bd4b374d6daf2c974c37a19ee37119e9dd01404bc72050c60978ab65f7f3c2b2
|
|
BLAKE2b-256 checksum How to use checksums |
e8031f6b8bcbf25e03b1d135d34e2f339b3c71bba87e147e3b6262391acce7ee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.
Transparency log