Skip to main content

Introduction

Thank you for using SEGUL! 🙏🏻

We develop SEGUL (SEquence and Genomic UtiLities) to address the need for a high-performance and accessible phylogenomic tool. It is particularly well-suited for large-scale phylogenomic projects, especially those involving thousands of loci and hundreds of samples. Additionally, SEGUL is capable of handling small Sanger sequences effectively.

info

SEGUL GUI is now in stable version. 🎉 It is available on Microsoft Store for Windows users and PlayStore for Android users. Other platform releases are coming soon.

Get it on Google Play

Citation

Handika, H., and J. A. Esselstyn. 2024. SEGUL: Ultrafast, memory-efficient and mobile-friendly software for manipulating and summarizing phylogenomic datasets. Molecular Ecology Resources. https://doi.org/10.1111/1755-0998.13964.

If you are interested in reading the journal article but do not have access to it, you can request a copy from the authors on ResearchGate.

Platform Support

Desktop

PlatformGUICLI
Linux
MacOS
Windows
Windows Subsystem for Linux (WSL)

Mobile

PlatformGUICLI
iOS
iPadOS
Android

Quick Start ⏱️

Command line (CLI) vs GUI

If your answer is yes to any of the following questions, you should use the CLI version of the app. Otherwise, either GUI or CLI will serve your need.

  1. Are you planning to run the app on non-GUI environment, such as a HPC cluster?
  2. Do you run SEGUL as part of a pipeline?
  3. Do you you need the utmost efficiency?

Learn more about the differences between the CLI and GUI version here.

Installation

Follow the installation instruction for your operating system. The fastest installation route for CLI is using the pre-compiled binaries here. Get the most up to date link for GUI installation here.

Usage

FeatureQuick Link
Alignment concatenationCLI / GUI
Alignment conversionCLI / GUI
Alignment filteringCLI / GUI
Alignment splittingCLI / GUI
Alignment partition conversionCLI / GUI
Alignment summary statisticsCLI / GUI
Genomic summary statisticsCLI / GUI
Sequence extractionCLI / GUI
Sequence ID extractionCLI / GUI
Sequence ID mappingCLI / GUI
Sequence ID renamingCLI / GUI
Sequence removalCLI / GUI
Sequence translationCLI / GUI
Log fileCLI / GUI

Supported File Formats

Supported input formats for Genomic tasks:

File FormatDescriptionSupported extensions
FASTQFor read summary statistics. Support compressed and uncompressed format..fastq, .fq
FASTAFor contig summary statistics..fasta, .fa, .fna, .fsa, .fas

Supported input and output file formats for Alignment and Sequence tasks:

File FormatDescriptionSupported extensions
FASTAInclude support for interleaved format..fasta, .fa, .fna, .fsa, .fas
PHYLIPSupport relaxed-phylip only. Include support for interleaved format. Learn the differences here..phy, .phylip, .ph
NEXUSInclude support for interleaved format..nexus, .nex, .nxs

Supported input and output partition formats:

File FormatDescriptionSupported extensions
RAxMLRAxML partition file..txt, .part, .partition
NEXUSNEXUS partition file..nexus, .nex, .nxs
info

SEGUL CLI can handle non-standard file extensions that are not listed above. Use the --format option to set the input format. The GUI version will not allow inputting non-standard file extensions. You can change the file extension to one of the supported file extensions or use the CLI version.

Example Dataset

We provide sample datasets to help you get started or test the app if you find any issues using your own datasets. The datasets include small alignments in SEGUL supported formats. Due to the large file sizes, we are unable to provide genomic datasets. You can download the genomic data from public repositories, such as NCBI SRA.

DatasetLink
FASTADownload
NexusDownload
Relaxed-PhylipDownload
Interleaved Relaxed-PhylipDownload
Concatenated NexusDownload

GUI Usage

  1. Open the app.
  2. Use the navigation bar to select the feature you want to use. For example, if you want to concatenate alignments, click the "Alignments" button.
  3. Use the dropdown menu to select the task. For alignment concatenation, select "Concatenate alignments".
  4. Add the input files by clicking the "Add file" button. On desktop platforms, you can also input a directory by clicking the "Add directory" button. The app will look for matching files in the directory.
  5. All the input files will be displayed in the input tab bar. You can remove the file by clicking the "Remove" button. Removing the file will only remove it from input list and not from the file system.
  6. Add the output directory by clicking the "Add output directory" button. On mobile platforms, the directory will be the default directory for the app.
  7. For some tasks, you also need to add the parameters. For example, if you want to filter alignments, you need to add the filtering parameters.
  8. Click the "Run" button to start the task.
  9. Once it's done, the app will display the output in the output tab bar. You can also tab the file to open it in the app file viewer. Current version only support plain text and comma-separated (CSV) data.
  10. You can also share the output. There are two share options. The quick share will create a zip file containing the output and share it using the system share sheet. You can also share individual files by clicking the share button on the file output viewer.
note

The GUI version is still in beta. If you encounter any issues, please report them to the issue tracker.

CLI Usage

segul command is structured as follows:

segul <command> <subcommand> --option1 value1 --option2 value2

For example, to concatenate alignments:

segul align concat --dir alignments/ --output aln-concat

See the command usage section for more detailed usage.

warning

The commands below expect SEGUL version 0.19.0+. If you are using lower version, the subcommand become the command and dir input option required input format.

For example:

segul alignment concat -d <input-directory>

In the version lower than 0.19.0, the command above will be:

segul concat -d <input-directory> -f <input-format>
FeatureCommands
Alignment concatenationsegul align concat -d <input-directory>
Alignment conversionsegul align convert -d <input-directory>
Alignment filteringsegul align filter -d <input-directory> <filtering-options>
Alignment splittingsegul align split -d <input-directory>
Alignment partition conversionsegul partition convert -d <input-directory>
Alignment summary statisticssegul align summary -d <input-directory>
Contig summary statisticssegul contig summary -d <input-directory>
Read summary statisticssegul read summary -d <input-directory>
Sequence extractionsegul sequence extract -d <input-directory> <extraction-options>
Sequence ID extractionsegul sequence id -d <input-directory>
Sequence ID mappingsegul sequence id --map -d <input-directory>
Sequence ID renamingsegul sequence rename -d <input-directory>
Sequence removalsegul sequence remove -d <input-directory>
Sequence translationsegul sequence translate -d <input-directory>
Main helpsegul --help
Command helpsegul <command> --help
Subcommand helpsegul <command> <subcommand> --help

Helps & Supports

If you have any questions, issues, or suggestions, please let us know. Learn more here.

Additional Resources