Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/corneliusroemer/nwk-formatter

Formatting newick trees for manual editing
https://github.com/corneliusroemer/nwk-formatter

Last synced: 24 days ago
JSON representation

Formatting newick trees for manual editing

Awesome Lists containing this project

README

        

# Newick Tree Validator and Formatter

Simple utility to validate and format Newick trees.

The main use of this utility is to validate constraint trees used with IQtree2.

IQtree2 can throw hard to understand errors when using constraint trees even if the tree is technically a valid Newick tree.

This utility will catch many of those errors and provide a more detailed error message.

## Usage

Validation without formatting:

```bash
./main.py
```

In place formatting:

```bash
./main.py --inplace
```

Outputting formatted tree to a separate file:

```bash
./main.py --outfile
```

Outputting list of terminal nodes into a text file:

```bash
./main.py --terminals
```

## Requirements

- Python
- Typer
- BioPython

## Release

This project uses [Poetry](https://python-poetry.org/) for dependency management and packaging.

To build a release, run:

```bash
poetry build
```

To publish a release to PyPI, run:

```bash
poetry publish
```

To publish the release to Github, run:

```bash
gh release create 0.4.0 dist/*
```