Skip to main content

sourmash

Quickly search, compare, and analyze genomic and metagenomic data sets.

Project Status: Active – The project has reached a stable, usable state and is being actively developed. License: 3-Clause BSD Documentation Gitter

DOI pyOpenSci

Bioconda install PyPI Conda Platforms Debian Testing Debian Unstable

Python 3.11 Python 3.12 Python 3.13 Build Status codecov

Usage:

sourmash sketch dna *.fq.gz
sourmash compare *.sig -o distances.cmp -k 31
sourmash plot distances.cmp

sourmash 1.0 is published on JOSS; please cite that paper if you use sourmash (doi: 10.21105/joss.06830):.

The latest major release is sourmash v4, which has several command-line and Python incompatibilities with previous versions. Please visit our migration guide to upgrade!


sourmash is a k-mer analysis multitool, and we aim to provide stable, robust programmatic and command-line APIs for a variety of sequence comparisons. Some of our special sauce includes:

  • FracMinHash sketching, which enables accurate comparisons (including ANI) between data sets of different sizes
  • sourmash gather, a combinatorial k-mer approach for more accurate metagenomic profiling

Please see the sourmash publications for details.

The name is a riff off of Mash, combined with @ctb's love of whiskey. (Sour mash is used in making whiskey.)

Maintainers: C. Titus Brown (@ctb), Luiz C. Irber, Jr (@luizirber), and N. Tessa Pierce-Ward (@bluegenes).

sourmash was initially developed by the Lab for Data-Intensive Biology at the UC Davis School of Veterinary Medicine, and now includes contributions from the global research and developer community.

Installation

We recommend using conda-forge to install sourmash:

conda install -c conda-forge sourmash-minimal

This will install the latest stable version of sourmash 4.

You can also use pip to install sourmash:

pip install sourmash

A quickstart tutorial is available.

Requirements

sourmash runs under Python 3.11 and later on Windows, Mac OS X, and Linux. The base requirements are screed, cffi, numpy, matplotlib, and scipy. Conda will install everything necessary, and is our recommended installation method (see below).

Installation with conda

conda-forge is a community maintained channel for the conda package manager. installing conda, you can install sourmash by running:

$ conda create -n sourmash_env -c conda-forge sourmash-minimal
$ conda activate sourmash_env
$ sourmash --help

which will install the latest released version.

Support

For questions, please open an issue on Github, or ask in our chat.

Development

Development happens on github at sourmash-bio/sourmash.

sourmash is developed in Python and Rust, and you will need a Rust environment to build it; see the developer notes for our suggested development setup.

After installation, sourmash is the main command-line entry point; run it with python -m sourmash, or do pip install -e /path/to/repo to do a developer install in a virtual environment.

The sourmash/ directory contains the Python library and command-line interface code.

The src/core/ directory contains the Rust library implementing core functionality.

Tests require py.test and can be run with make test.

Please see the developer notes for more information on getting set up with a development environment.

CTB Jan 2024

Release files for sourmash 4.9.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sourmash 4.9.4
File Size Uploaded
sourmash-4.9.4.tar.gz 25.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for sourmash 4.9.4
File
sourmash-4.9.4-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
sourmash-4.9.4-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
sourmash-4.9.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
sourmash-4.9.4-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
sourmash-4.9.4-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 45.7 MB

Release files / sourmash-4.9.4.tar.gz

Download URL sourmash-4.9.4.tar.gz
Size 25.2 MB
Tags Source
SHA-256 checksum
How to use checksums
28889d11041e398831875c7d17a367e3e5937b095d006752e45c7f2302f4626d
BLAKE2b-256 checksum
How to use checksums
ad1407265bede73653a2bd786b6ca9b5b1eb604e581e247505c8894401001487
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.8

Release files / sourmash-4.9.4-py3-none-win_amd64.whl

Download URL sourmash-4.9.4-py3-none-win_amd64.whl
Size 3.5 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
88cbc2d7fa0ea47a9dc0d0954f16c750eeffb5324a0fdff56dff5d4f08fba09c
BLAKE2b-256 checksum
How to use checksums
53e88bb05337b13ae165a701555df3ca32553b4bfd5a97ee92fe58a3d515d7d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.8

Release files / sourmash-4.9.4-py3-none-manylinux_2_28_x86_64.whl

Download URL sourmash-4.9.4-py3-none-manylinux_2_28_x86_64.whl
Size 5.1 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
7998eb803b1e75068256381404094c08566180a81ec60aadfada893922cc5bad
BLAKE2b-256 checksum
How to use checksums
ff7b764ec39f604f812c3cef29d5ec1032c96169331eff5948253fd562501743
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.8

Release files / sourmash-4.9.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL sourmash-4.9.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 3.7 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
11906e896e68c9d7f58251bc1a539e02540d063f2bab9733dc9c6a2b0dfa3317
BLAKE2b-256 checksum
How to use checksums
b3475fb20137c1acb6229f5ed5eeebeb3dbf2a895835b5edbd2585f8da110e58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.8

Release files / sourmash-4.9.4-py3-none-macosx_11_0_x86_64.whl

Download URL sourmash-4.9.4-py3-none-macosx_11_0_x86_64.whl
Size 4.2 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
a300a3d5adc8b0ab5b46bcfa079a250e1a92fcba446a414b61714930b4d40360
BLAKE2b-256 checksum
How to use checksums
6143cb744473b38349fcef526338e9895492c8d74c03c982f8d68d5583c6604e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.8

Release files / sourmash-4.9.4-py3-none-macosx_11_0_arm64.whl

Download URL sourmash-4.9.4-py3-none-macosx_11_0_arm64.whl
Size 3.9 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
23bd26c5cb538d30289303d751f417b58a542b6511daf95d133167f10344e24e
BLAKE2b-256 checksum
How to use checksums
ef11e6f653244da8c690207efc76b54d420dba561fa5c8ac80c4b07829f3ee65
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.8

Release history Release notifications | RSS feed

This release

4.9.4 This release

6 release files

4.9.3

6 release files

4.9.2

6 release files

4.9.1

6 release files

4.9.0

6 release files

4.8.14

6 release files

4.8.13

6 release files

4.8.11

6 release files

4.8.10

6 release files

4.8.9

6 release files

4.8.8

7 release files

4.8.7

7 release files

4.8.6

7 release files

4.8.5

5 release files

4.8.4

9 release files

4.8.3

9 release files

4.8.2

9 release files

4.8.1

9 release files

4.8.0

9 release files

4.7.0

9 release files

4.6.1

9 release files

4.6.0

9 release files

4.5.0

9 release files

4.4.3

9 release files

4.4.2

9 release files

4.4.1

9 release files

4.4.0

9 release files

4.3.0

8 release files

4.2.4

8 release files

4.2.3

8 release files

4.2.2

7 release files

4.2.1

7 release files

4.2.0

7 release files

4.1.2

7 release files

4.1.1

7 release files

4.1.0

7 release files

4.0.0

7 release files

3.5.1

7 release files

3.5.0

6 release files

3.4.1

6 release files

3.4.0

6 release files

3.3.1

6 release files

3.3.0

5 release files

3.2.3

4 release files

3.2.2

4 release files

3.2.1

4 release files

3.2.0

4 release files

3.1.0

4 release files

3.0.1

4 release files

3.0.0

4 release files

2.3.1

18 release files

2.3.0

18 release files

2.2.0

12 release files

2.1.0

12 release files

2.0.0

12 release files

1.0

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

1 release file

0.9.3

2 release files

0.9.2

1 release file

0.3

1 release file

0.2

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page