Fork me on GitHub


The aim of this project is to provide an easy to use toolkit for working with phylogenetic data. It is a library written in C++, which currently supports: There are furthermore several detail functions, as well as a multitude of convenience and utility functions and classes. The feature list will hopefully grow in the future.

Getting Started

You find all the information for getting started with genesis in the documentation. It contains a user manual with setup instructions and tutorials, as well as the full API reference.

For user support, please see our support forum. It is intended for questions on how to do things with genesis.

For bug reports and feature requests, please open an issue on our GitHub page.


A focus point of the toolkit is to work with phylogenetic placements. The following figure summarized the placement position of 7.5 mio short reads on a reference tree with 190 taxa. The colour code indicates the number of reads placed on each branch.

Phylogenetic tree with coloured branches.

The color coding in form of a tree in Nexus format was produced with genesis by reading jplace files of the placements, and visualized using FigTree and Inkscape.


A toolkit for working with phylogenetic data.
Copyright (C) 2014-2016 Lucas Czech

Lucas Czech
Exelixis Lab
Heidelberg Institute for Theoretical Studies
Schloss-Wolfsbrunnenweg 35, D-69118 Heidelberg, Germany


This work is financially supported by the Klaus Tschira Foundation and the HITS gGmbH - Heidelberg Institute for Theoretical Studies.

See the webpage of the Exelixis Lab for our other projects.