54 releases

0.21.0 Feb 22, 2024
0.20.0 Jan 30, 2024
0.19.2 Jul 9, 2023
0.18.1 Sep 21, 2022
0.3.2 Jul 31, 2021

#686 in Command line utilities

MIT license

470KB
10K SLoC

SEGUL segul logo

Segul-Tests Crate-IO Crates-Download GH-Release GH-Downloads LoC last-commit License

SEGUL is an ultra-fast, memory-efficient application for working with phylogenomic datasets. It is available as standalone, zero dependency command line, GUI applications (called SEGUI), and library/packages for Rust and other programming languages. It runs from your smartphone to High Performance Computers (see platform support below). It is safe, multi threaded, and easy to use.

It is designed to handle operations on large genomic datasets, while using minimal computational resources. However, it also provides convenient features for working on smaller datasets (e.g., Sanger datasets). In our tests, it consistently offers a faster and more efficient (low memory footprint) alternative to existing applications for a variety of sequence alignment manipulations (see benchmark).

Installation

GUI Version

Learn more about device requirements and GUI app installation in the official documentation.

CLI Version

The CLI app may work in any Rust supported platform. However, we only tested and officially support the following platforms:

  • Linux
  • MacOS
  • Windows
  • Windows Subsystem for Linux (WSL)

CLI Installation Methods

Features

Feature Quick Link
Alignment concatenation CLI / GUI
Alignment conversion CLI / GUI
Alignment filtering CLI / GUI
Alignment splitting CLI / GUI
Alignment partition conversion CLI / GUI
Alignment summary statistics CLI / GUI
Genomic summary statistics CLI / GUI
Sequence extraction CLI / GUI
Sequence ID extraction CLI / GUI
Sequence ID mapping CLI / GUI
Sequence ID renaming CLI / GUI
Sequence removal CLI / GUI
Sequence translation CLI / GUI

Supported sequence formats:

  1. NEXUS
  2. Relaxed PHYLIP
  3. FASTA
  4. FASTQ (gzipped and uncompressed)

All of the formats are supported in interleave and sequential versions. Except for FASTQ (DNA only), the app supports both DNA and amino acid sequences.

Supported partition formats:

  1. RaXML
  2. NEXUS

The NEXUS partition can be written as a charset block embedded in NEXUS formatted sequences or a separate file.

Contribution

We welcome any kind of contribution, from issue reporting, ideas to improve the app, to code contribution. For ideas and issue reporting please post in the Github issues page. For code contribution, please fork the repository and send pull requests to this repository.

Dependencies

~16–28MB
~382K SLoC