Bioverse is a Python package for simulating the results of a statistical survey of the properties of nearby terrestrial exoplanets via direct imaging or transit spectroscopy. An in-depth outline of the underlying statistical framework and examples of how it can be applied to astrophysics mission concepts is given in Bixel & Apai (2021). Readers are strongly encouraged to review this paper before proceeding. This documentation covers the Python implementation of Bioverse, but does not review many of its underlying statistical assumptions.

The Overview section describes the code’s structure and primary classes and should be reviewed first. Following that, the Examples section offers step-by-step examples for producing some of the results published in the paper, as well as ways to modify and expand upon the code. Most of these examples are also available as interactive Jupyter notebooks in the Notebooks directory of the GitHub repository.

References & Acknowledgements

Papers making use of Bioverse should reference Bixel & Apai (2021). You should also include references to the emcee and dynesty packages, which are used for hypothesis testing and parameter fitting.

Bioverse was developed with support from the following grants and collaborations:

  • Alien Earths & Earths in Other Solar Systems

  • NASA Earth and Space Science Fellowship Program (grant No. 80NSSC17K0470)

  • NASA’s Nexus for Exoplanet System Science (NExSS)


Bioverse can be cloned from its GitHub repository:

git clone

To install Bioverse, navigate to the directory containing and run: [1]

pip install .


Bioverse is compatible with Python 3.7+. It has the following dependencies, all of which can be installed using pip:

  • astroquery

  • dynesty

  • emcee

  • matplotlib

  • numpy

  • scipy

  • tqdm (optional: provides a progress bar for long processes)

  • pandas (optional: used for data visualization)

  • PyQt5 (optional: enables configuration GUI)