51 releases
0.19.2 | Jul 9, 2023 |
---|---|
0.18.1 | Sep 21, 2022 |
0.17.0 | Jul 1, 2022 |
0.16.3 | Mar 10, 2022 |
0.3.2 | Jul 31, 2021 |
#805 in Science
115 downloads per month
465KB
9K
SLoC
SEGUL 
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).
Links
- App Documentation: [EN]
- API Documentation: [Rust]
- GUI source code: [Repository]
- Citation: [Pre-print]
Features
Big changes in the version 0.19.0+ 💪🏼
- New command structure. Check quick start instruction to see the most up to date commands. We are working on updating the documentation throughout the website.
- New command to calculate summary statistics for raw reads and contigs.
- Input dir
-d
or--dir
now can infer input format based on the file extension. No need to specify the input format anymore. - Beta GUI version coming soon. We are cleaning up some bugs. Test alpha version here.
Bug fixes:
- Fix translation table errors.
- Update deprecated dependencies.
- Fix extract output issues.
Full feature list
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 |
Contig summary statistics | CLI / GUI |
Raw read summary statistics | CLI / GUI |
Sample distribution mapping | CLI / GUI |
Sequence extraction | CLI / GUI |
Sequence ID parsing | CLI / GUI |
Sequence ID renaming | CLI / GUI |
Sequence removal | CLI / GUI |
Sequence translation | CLI / GUI |
Supported sequence formats:
- NEXUS
- Relaxed PHYLIP
- FASTA
- 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:
- RaXML
- NEXUS
The NEXUS partition can be written as a charset block embedded in NEXUS formatted sequences or a separate file.
Supported Platforms
The CLI app may work in any Rust supported platform. For both CLI and GUI, below is a list of operating system that we tested and is guaranteed to work:
- Linux (CLI)
- MacOS (GUI and CLI)
- Windows (GUI and CLI)
- Windows Subsystem for Linux (WSL) (CLI)
- iOS (GUI)
- iPadOS (GUI)
- Android (GUI and CLI using Termux)
For Windows (including WSL) users, we recommend using Windows Terminal to ensure consistent terminal output. Windows Terminal requires separate installation for Windows 10. It should come pre-installed on Windows 11.
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
~11–26MB
~345K SLoC