Metadata-Version: 2.4
Name: cfetree
Version: 2.0.0
Summary: Simple script for drawing phylogenetic trees
Project-URL: Documentation, https://github.com/cfe-lab/cfetree#readme
Project-URL: Issues, https://github.com/cfe-lab/cfetree/issues
Project-URL: Source, https://github.com/cfe-lab/cfetree
Author-email: Vitaliy Mysak <vmysak@bccfe.ca>
License-Expression: GPL-3.0
License-File: COPYING
Keywords: pdf,toytree,tree maker
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: <3.15,>=3.10
Requires-Dist: toyplot
Requires-Dist: toytree>=3.0.11
Provides-Extra: dev
Requires-Dist: mypy==1.9.0; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Provides-Extra: test
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-html; extra == 'test'
Description-Content-Type: text/markdown

[![Lint](https://github.com/cfe-lab/cfetree/actions/workflows/lint.yml/badge.svg)](https://github.com/cfe-lab/cfetree/actions/workflows/lint.yml)
[![Typecheck](https://github.com/cfe-lab/cfetree/actions/workflows/typecheck.yml/badge.svg)](https://github.com/cfe-lab/cfetree/actions/workflows/typecheck.yml)
[![types - Mypy](https://img.shields.io/badge/types-Mypy-blue.svg)](https://github.com/python/mypy)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)

# CFE Tree Maker

CFE Tree Maker is a Python script that allows you to create and visualize phylogenetic trees in a simple and automated way.

## Features

- Produces phylogenetic trees in PDF format.
- Customizable label colors and styles.
- Supports Python 3.10 and higher.

## Installation

```shell
uv tool install cfetree
```

# Usage

> **Note:** CFE Tree Maker requires trees be generated from [Clustal](http://www.clustal.org/)!

To use CFE Tree Maker, run the following command:

```shell
cfetree input.newick output.pdf
```

Alternatively, import it into your own project:

```python
from cfetree import load_tree, export_tree

t = load_tree("A,B,C;")
export_tree(t, "/tmp/tree.pdf", "My tree")
```

This will generate a PDF file containing the phylogenetic tree.

# Contributing

Contributions to CFE Tree Maker are welcome!
If you find any issues or have suggestions for improvements, please open an issue or submit a pull request on the GitHub repository.

#### Development

Use [uv](https://github.com/astral-sh/uv) to manage the environment.

Install all dev dependencies:

```shell
uv sync --extra test --extra dev
```

Test:

```shell
uv run pytest
```

Lint:

```shell
uv run ruff check
```

Format:

```shell
uv run ruff format
```

Type-check:

```shell
uv run mypy cfetree tests
```

# License

CFE Tree Maker is licensed under the GNU General Public License v3.0. See the LICENSE file for more details.
