Crux is a software toolkit for molecular phylogenetic inference that runs on (at least) Linux, FreeBSD, and Mac OS X. It is structured as a set of Python modules, which makes it possible to quickly develop Python scripts that perform unique, non-canned analyses.

The Python language is powerful and elegant, but it does not have any high performance implementations, which makes it a challenge to use for scientific computing. Crux is actually implemented as a combination of Python, Cython and C code. Cython is a superset of Python, with various features that allow compiled results to substantially out-perform pure Python code. The result is that Crux supports a wide variety of users:


Crux's current features include the following:

Crux 1.0.0 was the first official release of Crux, but it was actually the fourth major implementation. The earlier versions were implemented in other programming languages, and a few features have since been dropped (fast Fitch parsimony, sophisticated TBR and NNI tree transformation/enumeration).

Copyright © 2009 Jason Evans <>.
Last updated 2009/07/23.