funannotate2-addons: scripts/methods to enhance functional annotation of eukaryotic genomes
Project description
funannotate2-addons
Addon scripts for enhancing functional annotation in funannotate2 genome annotation pipeline.
Standardized Output Format
All modules in funannotate2-addons produce a standardized 3-column TSV file that can be directly used with funannotate2 for functional annotation:
#gene_id annotation_type annotation_value
Where:
- gene_id: The identifier for the protein or gene
- annotation_type: The type of annotation (e.g., "name", "note", "go_term", "EC_number")
- annotation_value: The actual annotation content
This standardized format makes it easy to integrate the results with funannotate2's annotation system.
Overview
funannotate2-addons provides tools for running and parsing results from external annotation tools:
- EggNOG Mapper: Functional annotation using orthology
- InterProScan: Protein domain and family annotation
- antiSMASH: Secondary metabolite gene cluster annotation
- SignalP: Signal peptide prediction
Installation
pip install funannotate2-addons
Usage
# Run
f2a <command> [options]
Standardized Command-Line Interface
All funannotate2-addons commands use a consistent command-line interface:
# Basic usage pattern
f2a <command> -i /path/to/funannotate2_predict_folder [options]
Where:
-i, --input: Path to a funannotate2 predict output directory-o, --output: (Optional) Output directory. If not specified, output will be written to<input_dir>/annotate_misc
This standardized interface makes it easy to run multiple annotation tools on the same funannotate2 predict output:
EggNOG Mapper
EggNOG Mapper is a tool for fast functional annotation of novel sequences. This module provides a wrapper for running EggNOG Mapper and parsing its results.
# Basic usage
f2a emapper -i /path/to/funannotate2_predict_folder --cpus 8
# Specify output directory
f2a emapper -i /path/to/funannotate2_predict_folder -o /path/to/output_dir --cpus 8
# Specify database
f2a emapper -i /path/to/funannotate2_predict_folder --cpus 8 --database eggnog_proteins
# Export annotations to JSON
f2a emapper -i /path/to/funannotate2_predict_folder --cpus 8 --json
The module will generate:
- A standard eggnog-mapper output file
- An annotations file with gene names, descriptions, and EC numbers in the standardized 3-column format
- Optional JSON file with annotation information
InterProScan
InterProScan is a tool that scans protein sequences for matches against the InterPro protein signature databases. This module provides a wrapper for running InterProScan and parsing its results.
# Basic usage
f2a iprscan -i /path/to/funannotate2_predict_folder --cpus 8
# Specify output directory
f2a iprscan -i /path/to/funannotate2_predict_folder -o /path/to/output_dir --cpus 8
# Specify applications to run
f2a iprscan -i /path/to/funannotate2_predict_folder --cpus 8 --applications "Pfam,SMART,CDD"
# Disable GO term lookup
f2a iprscan -i /path/to/funannotate2_predict_folder --cpu 8 --no-goterms
antiSMASH
antiSMASH is a tool for identifying and analyzing secondary metabolite biosynthesis gene clusters in bacterial and fungal genomes. This module provides a wrapper for running antiSMASH and parsing its results.
# Basic usage
f2a antismash -i /path/to/funannotate2_predict_folder --cpus 8
# Specify output directory
f2a antismash -i /path/to/funannotate2_predict_folder -o /path/to/output_dir --cpus 8
# Specify taxonomy
f2a antismash -i /path/to/funannotate2_predict_folder --cpus 8 --taxon fungi
# Extract individual cluster files
f2a antismash -i /path/to/funannotate2_predict_folder --cpus 8 --extract-clusters
# Export cluster information to JSON
f2a antismash -i /path/to/funannotate2_predict_folder --cpus 8 --json
The module will generate:
- A GenBank file with annotated clusters
- An annotations file with cluster and domain information in the standardized 3-column format
- A clusters file with detailed information about each cluster
- Optional individual GenBank files for each cluster
- Optional JSON file with cluster information
Note: This module only accepts GenBank files from the funannotate2 predict output. Gene finding is disabled to ensure we use the gene models from the GenBank file rather than having antiSMASH attempt to predict genes, which doesn't work well for eukaryotic organisms.
SignalP
SignalP is a tool for predicting the presence and location of signal peptides in proteins. This module provides a wrapper for running SignalP 6.0 and parsing its results.
# Basic usage
f2a signalp6 -i /path/to/funannotate2_predict_folder
# Specify output directory
f2a signalp6 -i /path/to/funannotate2_predict_folder -o /path/to/output_dir
# Specify organism group
f2a signalp6 -i /path/to/funannotate2_predict_folder --organism other
# Generate plots
f2a signalp6 -i /path/to/funannotate2_predict_folder --plot
# Export predictions to JSON
f2a signalp6 -i /path/to/funannotate2_predict_folder --json
The module will generate:
- A summary file with signal peptide predictions
- An annotations file with signal peptide information in the standardized 3-column format
- Optional plots for visualizing signal peptide predictions
- Optional JSON file with prediction information
Note: This module is specifically designed for SignalP 6.0, which has a different command-line interface and output format compared to previous versions.
Requirements
- Python 3.7+
- External tools must be installed separately:
- EggNOG Mapper: https://github.com/eggnogdb/eggnog-mapper
- InterProScan: https://interproscan-docs.readthedocs.io/en/latest/
- antiSMASH: https://docs.antismash.secondarymetabolites.org/
- SignalP: https://services.healthtech.dtu.dk/services/SignalP-6.0/
Dependencies
funannotate2-addons has minimal dependencies:
- packaging
- requests
- gfftk
- gb-io (for GenBank file parsing)
Note: The antiSMASH module uses gb-io instead of BioPython to reduce dependencies.
Development
Testing
funannotate2-addons uses pytest for testing. To run the tests:
# Install development dependencies
pip install -e ".[dev]"
# Run all tests
pytest
# Run tests with coverage report
pytest --cov=funannotate2_addons
Test files are located in the tests/ directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file funannotate2_addons-26.3.7.tar.gz.
File metadata
- Download URL: funannotate2_addons-26.3.7.tar.gz
- Upload date:
- Size: 33.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c49ddd9fad365e5865102037dc8aac6f19c7e1c35f89b1b9d58629e5d65c41c
|
|
| MD5 |
a629fe8b31cdfa4c544cfb3b903d11c0
|
|
| BLAKE2b-256 |
c5840e211aee131486aacdc375f662c8ac24bfd3a736f6559e182f2fefec8bd5
|
Provenance
The following attestation bundles were made for funannotate2_addons-26.3.7.tar.gz:
Publisher:
production-release.yml on nextgenusfs/funannotate2-addons
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
funannotate2_addons-26.3.7.tar.gz -
Subject digest:
5c49ddd9fad365e5865102037dc8aac6f19c7e1c35f89b1b9d58629e5d65c41c - Sigstore transparency entry: 1059813780
- Sigstore integration time:
-
Permalink:
nextgenusfs/funannotate2-addons@da39935975bcc9e5df74c29064b126dbe006598c -
Branch / Tag:
refs/heads/main - Owner: https://github.com/nextgenusfs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
production-release.yml@da39935975bcc9e5df74c29064b126dbe006598c -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file funannotate2_addons-26.3.7-py3-none-any.whl.
File metadata
- Download URL: funannotate2_addons-26.3.7-py3-none-any.whl
- Upload date:
- Size: 44.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
242e81964ffcbab258149732f8cd39103935efe3366c171b2dd3c196cb974af3
|
|
| MD5 |
77da758e4c416cd5a3196b72e8d91977
|
|
| BLAKE2b-256 |
b1892e3f29c41cb86273dcd8f3ec2df5b4e87ae0d554cbb268ae7c3092940cae
|
Provenance
The following attestation bundles were made for funannotate2_addons-26.3.7-py3-none-any.whl:
Publisher:
production-release.yml on nextgenusfs/funannotate2-addons
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
funannotate2_addons-26.3.7-py3-none-any.whl -
Subject digest:
242e81964ffcbab258149732f8cd39103935efe3366c171b2dd3c196cb974af3 - Sigstore transparency entry: 1059813782
- Sigstore integration time:
-
Permalink:
nextgenusfs/funannotate2-addons@da39935975bcc9e5df74c29064b126dbe006598c -
Branch / Tag:
refs/heads/main - Owner: https://github.com/nextgenusfs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
production-release.yml@da39935975bcc9e5df74c29064b126dbe006598c -
Trigger Event:
workflow_dispatch
-
Statement type: