Skip to content

Changwanseo/FunVIP

Repository files navigation

FunVIP DOI

FunVIP is now published please cite:

Seo CW, Yoo S, Cho Y, Kim JS, Steinegger M, Lim YW. FunVIP: Fungal Validation and Identification Pipeline based on phylogenetic analysis. J. Microbiol. 2025;63(4):e2411017. Link

Fungal Validation & Identification Pipeline

An automatic tree-based sequence identification and validation pipeline for fungal (or maybe other) species

  • Automatic tree-based identification
  • Works with multiple genetic marker
  • Database sequence validation algorithm implemented

figure1 - ver17A

Bug reports are always welcomed

Tutorial

Documentation

Requirements

  • Conda or Mamba environment

* See here for how to install conda environment

* Recently, Mamba is a lot faster than conda. See here to how to install mamba environment

Installation

Quick install (conda / mamba)

The external aligners and tree tools install via conda; FunVIP and its Python dependencies (including ete4) install via pip (which works on Linux/macOS).

conda env create -f environment.yml   # or: mamba env create -f environment.yml
conda activate funvip
FunVIP --test terrei --email you@example.com

Or run everything in a container (no local install; handy on Windows/WSL):

docker build -t funvip .
docker run --rm -v "$PWD:/data" funvip --test terrei --email you@example.com --outdir /data/out



Usage

FunVIP --db {Your database file} --query {Your query file} --email {Your email} --gene {Your genes} --preset {fast or accurate}

Example

FunVIP --db Penicillium.xlsx --query Query.xlsx --email {Your email} --thread 8 --gene ITS BenA RPB2 CaM --preset fast

Quick check

Verify your installation on a bundled dataset (needs an e-mail for the GenBank accessions): FunVIP --test terrei --email {Your email}

* See documentation for detailed usage

How to make database?

figure1 - ver17B

See example database here

Results

Outputs are written to {outdir}/{runname}/:

  • {runname}.result.csv : Final identification result: how each query was assigned to the group and species level through tree-based identification

  • {runname}.dataset.csv : Clustering result: which group (e.g. genus/section) each sequence was assigned to

  • {runname}.report.txt : Run report with the options used and a per-step summary. Taxa ending with a number are paraphyletic and should be checked

  • 07_Tree/{runname}_{group}_{gene}.svg : Final collapsed tree (SVG), editable in vector-graphics programs or PowerPoint (ungroup)

  • 07_Tree/{runname}_{group}_{gene}_original.svg : Uncollapsed tree for inspection

  • Example output tree of FunVIP image

Scheduling

  1. Beta release part 1 (2023 Feburary ~ As paper published, ver 0.3) Will be tested by our lab memebers to fix bugs and advance features
  2. Beta release part 2 (As paper published ~ When pipeline gets stabled, ver 0.4) Will be tested by peer taxonomists
  3. Stable release (ver 1.0)

Running the tests

pytest runs the fast unit tests (no external tools needed). pytest -m integration runs the end-to-end terrei test (needs the external tools on PATH and FUNVIP_TEST_EMAIL set). See tests/README.md.

License

GPL 3.0

About

Fungal Validation and Identification Pipeline

Topics

Resources

License

Stars

15 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors

Languages