Metadata-Version: 2.4
Name: ancestree-popgen
Version: 0.2.0
Summary: Ancestral allele annotation via Felsenstein likelihood on ARGs and fixed trees, with or without outgroups.
License-Expression: GPL-3.0-or-later
License-File: LICENSE
Keywords: ancestral allele,population genetics,phylogenetics,coalescent,site frequency spectrum,vcf
Author: Janek Sendrowski
Author-email: sendrowski.janek@gmail.com
Requires-Python: >=3.11,<3.14
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Provides-Extra: all
Provides-Extra: maps
Provides-Extra: newick
Provides-Extra: plotting
Provides-Extra: vcf
Provides-Extra: zarr
Requires-Dist: cyvcf2 (>=0.30) ; extra == "all"
Requires-Dist: cyvcf2 (>=0.30) ; extra == "vcf"
Requires-Dist: llvmlite (>=0.42,<1)
Requires-Dist: matplotlib (>=3.7) ; extra == "all"
Requires-Dist: matplotlib (>=3.7) ; extra == "plotting"
Requires-Dist: msprime (>=1.3) ; extra == "all"
Requires-Dist: msprime (>=1.3) ; extra == "maps"
Requires-Dist: newick (>=1.9) ; extra == "all"
Requires-Dist: newick (>=1.9) ; extra == "newick"
Requires-Dist: numba (>=0.59,<1)
Requires-Dist: numpy (>=1.24,<3)
Requires-Dist: scipy (>=1.10,<2)
Requires-Dist: tqdm (>=4.60,<5)
Requires-Dist: tskit (>=1.0,<2)
Requires-Dist: zarr (>=2.16) ; extra == "all"
Requires-Dist: zarr (>=2.16) ; extra == "zarr"
Project-URL: Documentation, https://ancestree.readthedocs.io
Project-URL: Repository, https://github.com/Sendrowski/Ancestree
Description-Content-Type: text/markdown

# Ancestree  <img align="right" width="100" src="https://raw.githubusercontent.com/Sendrowski/Ancestree/main/docs/logo_thumbnail.png">
[![Tests](https://github.com/Sendrowski/Ancestree/actions/workflows/run-tests.yml/badge.svg?branch=main)](https://github.com/Sendrowski/Ancestree/actions/workflows/run-tests.yml)
[![codecov](https://codecov.io/gh/Sendrowski/Ancestree/branch/main/graph/badge.svg)](https://codecov.io/gh/Sendrowski/Ancestree)
[![Documentation Status](https://readthedocs.org/projects/ancestree/badge/?version=latest)](https://ancestree.readthedocs.io/en/latest/?badge=latest)
[![PyPI version](https://badge.fury.io/py/ancestree-popgen.svg)](https://badge.fury.io/py/ancestree-popgen)
[![Conda Version](https://img.shields.io/conda/vn/conda-forge/ancestree.svg?color=blue)](https://anaconda.org/conda-forge/ancestree)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![Downloads](https://static.pepy.tech/badge/ancestree-popgen)](https://pepy.tech/project/ancestree-popgen)
[![DOI](https://img.shields.io/badge/DOI-10.64898/2026.09.11.750934-blue)](https://doi.org/10.64898/2026.09.11.750934)

``ancestree`` is a package for likelihood-based, per-site ancestral-allele annotation, unifying outgroup-based (EST-SFS-style) and ARG-based (PolarBEAR-style) inference behind a single likelihood kernel. It runs in three modes: fixed-tree, ARG, and local-tree, the last inferring its own local genealogies from the variant data rather than taking a supplied ARG. Every site receives a full posterior over the four nucleotide states, with multi-allelic sites, missing data and recurrent mutation handled natively.

Please see the [documentation](https://ancestree.readthedocs.io/en/latest/) for all the details.

