Skip to content
A Python API for manipulating (Mc)Cortex de novo assembly graph and link data
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
cortex_tools_benchmark @ 52f50fe Update cortex_tools_benchmark submodule Sep 14, 2018
docs Add missing language to code-block Apr 29, 2019
scripts Move back to using environment.yml in CI Apr 19, 2019
src Add a section on link-informed graph traversal Apr 26, 2019
tests Remove unnecessary @given to speed up tests Apr 23, 2019
.bumpversion.cfg Bump version: 0.46.3 → 0.46.4 Apr 25, 2019
.gitignore Remove cython from distribution Jul 30, 2018
.gitmodules Remove in code mccortex dependencies Oct 11, 2018
.readthedocs.yml Try moving sphinx requirements to docs dir Apr 23, 2019
.travis.yml Remove compression libraries from travis (now in conda) Oct 11, 2018
Makefile Fix README.rst for pypi Apr 23, 2019
README.rst Kmer graph from retriever contains AAA Oct 5, 2017
environment Header parser acceptance test Sep 20, 2017
environment.lock.yml Remove support for Pipenv in development; switch to conda Apr 18, 2019
environment.yml Try moving sphinx requirements to docs dir Apr 23, 2019
setup.cfg Sort seed kmers + doctests Aug 29, 2018 Bump version: 0.46.3 → 0.46.4 Apr 25, 2019
tox.ini Sort seed kmers + doctests Aug 29, 2018


Overview of Cortexpy

Travis-CI Build Status
Coverage Status Coverage Status
Documentation Status

Cortexpy is a Python package for sequence analysis using linked and colored De Bruijn graphs such as the ones created by Cortex and Mccortex. This project aims to mirror many of the features contained in CortexJDK.

Cortexpy also comes with a command-line tool for basic inspection and manipulation of Cortex graphs with and without links.


The audience of cortexpy is researchers working with colored De Bruijn graphs and link information in Cortex and Mccortex format.

Free software

Cortexpy is free software; you can redistribute it and/or modify it under the terms of the Apache License version 2.0. Contributions are welcome. Please join us on GitHub.


pip install cortexpy


For more information, please see cortexpy documentation.

Citing cortexpy

If you use cortexpy in your work, please consider citing:

Akhter, Shirin, Warren W. Kretzschmar, Veronika Nordal, Nicolas Delhomme, Nathaniel R. Street, Ove Nilsson, Olof Emanuelsson, and Jens F. Sundström. "Integrative analysis of three RNA sequencing methods identifies mutually exclusive exons of MADS-box isoforms during early bud development in Picea abies." Frontiers in Plant Science 9 (2018).


This code is maintained by Warren Kretzschmar <>. For bugs, please raise a GitHub issue.


  1. Install conda.

  2. Download development and testing tools:

    conda env create -f environment.yml -n my-dev-environment
  3. Activate development environment:

    conda activate my-dev-environment

All remaining commands in the development section need to be run in an activated conda dev environment.


make test

Deploy new cortexpy version to pypi

Requires access credentials for pypi.

make deploy

Building the docs

The documentation is automatically built by read-the-docs on push to master. To build the documentation manually:

# install sphinx dependencies
pip install docs/requirements.txt

make docs

Updating the dev environment

This section is experimental because it does not work on travis-CI yet.

# Create a new env from the high-level requirements file
conda env create -f environment.yml -n another-dev-env

# activate the new environment
conda activate another-dev-env

# save new env to environment.lock.yml
make lock
You can’t perform that action at this time.