Skip to content
python library for interacting with Open Tree of Life resources
Jupyter Notebook Python Other
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.


Build Status

peyotl is a python package written to make it easier to interact with the software produced by the [Open Tree of Life project] 1. Specifically, to:

  1. interact with a local version of the [phylesystem] 2 repository of curated phylogenetic studies ;

  2. call web services associated with the studies (served by web app running the [phylesystem-api code] 3);

  3. call web services associated with taxonomic resolution services (running [taxomachine] 4 );

  4. call web services associated with Open Tree of Life's "synthetic" estimate of the tree of life (running [treemachine] 5);

  5. call web services associated with an annotation database (that we have not built yet)

Currently peyotl is used to implement most of the functionality in the [phylesystem-api] 3 backend of the study curation tool.


You probably want to be using a virtualenv. Then you can:

$ pip install -r requirements.txt
$ python develop

For full(er) documentation, check out our documentation site.



python test

to trigger the unittests. The testing page of the documentation site describes the other tests scripts.


peyotl is primarily written by Mark Holder, Emily Jane McTavish, and Jim Allman, but see the [contributors file] 6 for a more complete list of people who have contributed code.

The fabulous Karl Gude created the logo.

Several parts of the, logging, documentation, and test suite were based on Jeet Sukumaran's work in the DendroPy package.

The tree/node iteration functions in peyotl.phylo.tree are also adapted from DendroPy.

The sortattr.xslt stylesheet (which is only used in round-trip testing) is from

The peyotl.phylesystem.git_actions (and the tests) were a part of the repo which was primarily the work of Duke Leto (at that time).

Jim Allman, Karen Cranston, Cody Hinchliff, Mark Holder, Peter Midford, and Jonathan Rees all participated in the discussions that led to the NexSON mapping.

The peyotl/test/data/nexson/phenoscape/nexml test file is from PhenoscapeKB, [U.S. National Evolutionary Synthesis Center],; [Feb 16, 2014] The citation for the data is in the nexml doc itself.

peyotl includes the tool from setuptools To satisfy the Python Software Foundation license we note here that peyotl does not alter the python sourcee code itself. By installing the package you enable the python interpreter to find the code included in this package for interacting with open tree of life data and web services.

Etymology: According to Wikipedia, peyotl is the Nahuatl word for Lophophora williamsii.

You can’t perform that action at this time.